本文简单讲诉jQuery处理json与ajax返回的Json的一个例子

来源:互联网 发布:dnf易语言脚本源码 编辑:程序博客网 时间:2024/04/30 11:03

JSON中对象通过“{}”来标识,一个“{}”代表一个对象,如{“pwd”:”123”},对象的值是键值对的形式(key:value)。

 “[]”,标识数组,数组内部各个数据之间通过“,”分割,一个数组中可以有很多对象,具体表现形式如下:

[{"pwd":"adminpwd01","userName":"admin01"},{"pwd":"adminpwd02","userName":"admin01"}]

下面讲下采用Java语言实现通过json对象数据的传输

1.首先建立一个servlet,具体核心代码如下所示:

[java] view plain copyprint?
  1. public void doPost(HttpServletRequest request, HttpServletResponse response)  
  2.             throws ServletException, IOException {  
  3.   
  4.         response.setContentType("text/html");  
  5.         PrintWriter out = response.getWriter();  
  6.         String name=request.getParameter("name");  
  7.         System.out.println("name="+name);  
  8.         UserInfo userInfo=new UserInfo();  
  9.         userInfo.setUserName("admin01");  
  10.         userInfo.setPwd("adminpwd01");  
  11.         UserInfo userInfo2=new UserInfo("admin01", "adminpwd02");  
  12.         List<UserInfo> list=new ArrayList<UserInfo>();  
  13.         list.add(userInfo);   
  14.         list.add(userInfo2);  
  15.         JSONArray ja=JSONArray.fromObject(list);          
  16.         out.print(ja);  
  17.         System.out.println("array--->"+ja);    
  18.     }  


上面代码的主要功能是为了实现将对象中数据放到list集合中,然后将list集合中的数据封装到JSON数组中,然后通过OUT.PRINT输出。

再上面的代码中我们要引入jar包

再web.xml中配置servlet以及servlet的映射信息。

2.建立一个jsp

引入jquery.js,具体实现代码如下:

[html] view plain copyprint?在CODE上查看代码片派生到我的代码片
  1. <script type="text/javascript" src="./jquery/js/jquery-2.1.1.js"></script>  
  2. <script type="text/javascript">  
  3.      function test(){  
  4.          var name=document.getElementById("name").value;          
  5.          $.ajax({   
  6.                 type:"POST", //请求方式  
  7.                 url:"./s/userServlet", //请求路径  
  8.                 cache: false,     
  9.                 data:"name="+name,  //传参  
  10.                 dataType: 'json',   //返回值类型  
  11.                success:function(msg){         
  12.                      var me=msg[0];   
  13.                     var me=msg[0].userName;  
  14.                    for(i in msg){  
  15.                        var me1=msg[i];  
  16.                    }  
  17.                       
  18.                    },  
  19.                 error:function(){  
  20.                     alert("error");  
  21.                 }  
  22.                 });  
  23.       }  
  24. </script>  
  25. </head>  
  26. <body>  
  27.     <form action="" method="post" >  
  28.         <input type="text" name="name" id="name" value="nameme">  
  29.         <input type="button" name="b" value="测试" onclick=test()>  
  30.     </form>  
  31.       
  32. </body>  

3.启动服务器,我们通过谷歌浏览器来调试下,看下具体的数据情况。

控制台打印的结果如下:

阅读全文
0 0
原创粉丝点击