使用jason需要导入的jar包

引用

json-lib-2.3-jdk15.jar

commons-beanutils-1.7.0.jar

commons-httpclient-3.1.jar

commons-lang-2.3.jar

commons-logging-1.0.4.jar

commons-collections-3.1.jar

ezmorph-1.0.3.jar


这些包可以从一下地方下载:

http://commons.apache.org/index.html

http://json-lib.sourceforge.net/

http://ezmorph.sourceforge.net/

http://www.docjar.com/

如果不关联这些包,则会出现以下错误:

java.lang.NoClassDefFoundError: net/sf/ezmorph/Morpher

java.lang.NoClassDefFoundError: org/apache/commons/collections/map/ListOrderedMap

java.lang.NoClassDefFoundError: org/apache/commons/beanutils/DynaBean

java.lang.NoClassDefFoundError: org/apache/commons/codec/DecoderException

java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException

java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory



package com.json;   
  
public class User {   
    String username;   
    String password;   
    public String getUsername() {   
        return username;   
    }   
    public void setUsername(String username) {   
        this.username = username;   
    }   
    public String getPassword() {   
        return password;   
    }   
    public void setPassword(String password) {   
        this.password = password;   
    }   
       
}  


package com.json;   
  
import java.io.IOException;   
import java.io.PrintWriter;   
import java.util.ArrayList;   
import java.util.List;   
  
import javax.servlet.ServletException;   
import javax.servlet.http.HttpServlet;   
import javax.servlet.http.HttpServletRequest;   
import javax.servlet.http.HttpServletResponse;   
  
import net.sf.json.JSONArray;   
  
public class TestJson extends HttpServlet {   
  
    public void doGet(HttpServletRequest request, HttpServletResponse response)   
            throws ServletException, IOException {   
           doPost(request,response);   
    }   
    public void doPost(HttpServletRequest request, HttpServletResponse response)   
            throws ServletException, IOException {   
  
        response.setContentType("text/html");      
    String str= request.getParameter("name");//得到ajax传递过来的paramater   
        System.out.print(str);   
        PrintWriter out = response.getWriter();   
        List list = new ArrayList();//传递List   
                  Map m=new HashMap();//传递Map       
        User u1=new User();   
        u1.setUsername("zah");   
        u1.setPassword("123");   
        User u2=new User();   
        u2.setUsername("ztf");   
        u2.setPassword("456");     
        list.add(u1); //添加User对象         
         list.add(u2);     //添加User对象     
         
          m.put("u1", u1);   
         m.put("u2", u2);      
  
   JSONArray jsonArray2 = JSONArray.fromObject( list );   
       //把java数组转化成转化成json对象    
   JSONObject jo=JSONObject.fromObject(m);//转化Map对象   
        out.print(jsonArray2);//返给ajax请求   
       out.print(jo);//返给ajax请求   
    }   
}   



<script type="text/javascript" src="js/jquery.js"></script>   
 <script type="text/javascript">   
     function test(){   
         $.ajax({    
                type:"POST", //请求方式   
                url:"testjson", //请求路径   
                cache: false,      
                data:"name=zah",  //传参   
                dataType: 'json',   //返回值类型   
               success:function(json){         
                    alert(json[0].username+" " json[0].password);    //弹出返回过来的List对象   
                   }   
                });   
      }   
</script>   
  </head>   
  <body>   
    <input type="button" name="b" value="测试" onclick=test()>   
  </body>  

你可能感兴趣的:(java,apache,json,Ajax,servlet)