解析json之net.sf.json

 

  1.需要导入的jar包

     在后台要处理JSON格式的数据,需要导入net.sf.json的jar包json-lib包;要是程序可以运行必须引入JSON-lib包,JSON-lib包同时依赖于一下的JAR包:

  1. commons-lang.jar
  2. commons-beanutils.jar
  3. commons-collections.jar
  4. commons-logging.jar 
  5. ezmorph.jar
  6. json-lib-2.2.2-jdk15.jar

  2.JSONObject和JSONArray使用 

     JSONObject官网API:http://resources.arcgis.com/en/help/arcobjects-java/api/arcobjects/com/esri/arcgis/server/json/JSONObject.html

     JSONArray官网API: http://json-lib.sourceforge.net/apidocs/net/sf/json/JSONArray.html

     使用案例:

      

配合上面的API,大家再看下这段代码,就会大有收获了~
    import net.sf.json.JSONArray;    
    import net.sf.json.JSONObject;    
    import java.util.*;    
    /**  
     *  
     * @author derek  
     */    
    public class JavaTest {    
        public static void main(String[] args){      
           JSONObject obj=new JSONObject();    
           obj.put("derek","23");    
           obj.put("dad", "49");    
           obj.put("mom", "45");    
           System.out.println("通过构造器的方式创建的JSONObject对象:"+obj);    
               
           Map<String,String> map=new LinkedHashMap<>();    
           map.put("derek","23");    
           map.put("dad", "49");    
           map.put("mom", "45");    
           System.out.println("通过fromObject方法将map对象转换为JSONObject对象:"+JSONObject.fromObject(map));    
               
           JSONArray arr=new JSONArray();    
           arr.add(0,"derek");    
           arr.add(1,"dad");    
           arr.add(2,"mom");    
           System.out.println("通过构造器的方式创建的JSONArray:"+arr);    
               
           ArrayList<String> list=new ArrayList<>();    
           list.add("derek");    
           list.add("dad");    
           list.add("mom");    
           System.out.println("通过fromObject方法将Arraylist对象转换为JSONArray对象:"+JSONArray.fromObject(list));    
               
           System.out.println("将HashMap对象通过fromObject方法转换为JSONArray对象"+JSONArray.fromObject(map));    
               
           String str="{\"derek\":23,\"dad\":49,\"mom\":45}";    
           System.out.println("解析之后的JSON对象:"+JSONObject.fromObject(str));    
               
           //遍历输出    
           Iterator<String> it=obj.keys();    
           while(it.hasNext()){    
               String key=it.next();    
               System.out.println(key+":"+obj.get(key));    
           }    
        }    
            
    }    
运行结果如下:
通过构造器的方式创建的JSONObject对象:{"derek":"23","dad":"49","mom":"45"}
通过fromObject方法将map对象转换为JSONObject对象:{"derek":"23","dad":"49","mom":"45"}
通过构造器的方式创建的JSONArray:["derek","dad","mom"]
通过fromObject方法将Arraylist对象转换为JSONArray对象:["derek","dad","mom"]
将HashMap对象通过fromObject方法转换为JSONArray对象[{"derek":"23","dad":"49","mom":"45"}]
解析之后的JSON对象:{"derek":23,"dad":49,"mom":45}
derek:23
dad:49
mom:45


  3. json-lib文档

      JSON-lib在线文档:http://www.boyunjian.com/javadoc/net.sf.json-lib/json-lib/2.4/jdk15/net/sf/json/JSONObject.html

    4.JSONObject使用

     JSON-lib包是一个beans,collections,maps,java arrays 和XML和JSON互相转换的包。在本例中,我们将使用JSONObject类创建JSONObject对象,然后我们打印这些对象的值。为了使用 JSONObject对象,我们要引入"net.sf.json"包。为了给对象添加元素,我们要使用put()方法。

      JSONObject使用:http://www.cnblogs.com/hitwtx/articles/2468633.html



JSON包常用方法:http://blog.csdn.net/u012750283/article/details/51043663

解析json之net.sf.json:http://blog.csdn.net/itlwc/article/details/38442667

发布了306 篇原创文章 · 获赞 193 · 访问量 71万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 编程工作室 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览