博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Ajax+Jsp+servlet+json技术的使用
阅读量:6256 次
发布时间:2019-06-22

本文共 1668 字,大约阅读时间需要 5 分钟。

Ajax+Jsp+servlet+json技术的使用

 

在使用json的时候,记得必须导入如下几个.jar包,最好是手动复制.jar包只lib路径下,否则可能出现异常。

commons-beanutils.jar     commons-collections.jar   commons-lang-2.5.jar(必须是2.x  3.x的会报ClassNotFoundException这个异常)   commons-logging.jar  ezmorph-1.0.6.jar  json-lib.jar.导入这些jar包以后,就可以在后台 使用json来进行数据处理了。

 

JSONArray的使用:

这里做一个简单的示例:

定义一个Person类:

public class Person{

   private String name;

   private String sex;

   private int age;

   ....

}

假如我们在servlet中使用了json

public class Test extends HttpServlet{

 @Override

 protected void doGet(HttpServletRequest req, HttpServletResponse resp)
   throws ServletException, IOException {
  doPost(req, resp);
 }

 @Override

 protected void doPost(HttpServletRequest req, HttpServletResponse resp)
   throws ServletException, IOException {
  // TODO Auto-generated method stub
  resp.setContentType("text/xml;character=utf-8");
  resp.setHeader("Cache-Control", "no-cache");
  try{
   Person p =new Person();
   p.setName("小宝");
   p.setAge(3);
   p.setSex("男");
   List<Person> list =new ArrayList<Person>();
   list.add(p);
   try{
    JSONArray json =JSONArray.fromObject(list);
    JSONObject jb =new JSONObject();
    jb.put("person", json);
    resp.getWriter().write(jb.toString());
   }catch(IOException e){
    e.printStackTrace();
   }
  }catch(Exception e){
   e.printStackTrace();
  }
 }

}

前台的Ajax接收到后台返回json的数据

<script type="text/javascript">

     function validate(obj){
      var xmlhttp;
   if(window.XMLHttpRequest){
    xmlhttp=new XMLHttpRequest();
   }else{
    xmlhttp=new ActiveObject("Microsoft.XMLHTTP");
   }
   xmlhttp.onreadystatechange=function(){
    if (xmlhttp.readyState==4 && xmlhttp.status==200){          
        var back =xmlhttp.responseText;
        //在这里遍历输出返回来的信息即可      

    }

   }
   var url ="fan/servlet/demo?name="+obj;   
   xmlhttp.open("POST",url,true);
   xmlhttp.send();
     }
</script> 

转载地址:http://rjxsa.baihongyu.com/

你可能感兴趣的文章
linux全方位掌握一个命令--思路比方法更重要
查看>>
[Flexbox] Use Flex to Scale Background Image
查看>>
【等待事件】序列等待事件总结(enq: SQ - contention、row cache lock、DFS lock handle和enq: SV - contention)...
查看>>
算法与数据结构(七) AOV网的拓扑排序(Swift版)
查看>>
maven pom.xml解释 (转)
查看>>
markdown to html
查看>>
Pspice仿真器
查看>>
ogg 、 Shareplex和DSG RealSync 对比
查看>>
NK3C程序配置
查看>>
webrtc中APM(AudioProcessing module)的使用2
查看>>
lunix的查看Tomcat目录下日志的快速操作
查看>>
zabbix添加邮件报警机制
查看>>
微信开放之模板消息
查看>>
Hql 中实用查询时候 引号的使用
查看>>
利用PowerShell复制SQLServer账户的所有权限
查看>>
SQLServer 维护脚本分享(10)索引
查看>>
js里父页面与子页面的相互调用
查看>>
AES加解密【示例】
查看>>
jdbc向各种数据库发送sql语句
查看>>
比特币进一步学习-针对作弊问题的处理
查看>>