Json-lib, 实现Java对象与JSON数据格式的互转

3009人阅读 评论(0) 收藏 举报

Json-lib 是什么?

官方解释是:JSON-lib is a java library for transforming beans, maps, collections, java arrays and XML to JSON and back again to beans and DynaBeans.

其实就是实现json 格式与java 类对象的互转。 在Java代码中可以很简单的解析json格式的数据。

什么状况下使用Json-lib?

Java代码中要解析JSON格式的字符串,

1. 比如通过Ajax获取的,或是从其他接口中过来的json 格式的字符串;

2. 想传递一串很复杂的字符串给Java代码处理(比如使用applet 读取文件里面的内容)。 当然这种方式你可以自己写规则去解析,频繁的使用split,而且要处理好特殊字符。估计得头大。

怎么开始使用Json-lib?

官方网址: http://json-lib.sourceforge.net/

需要准备的jar包

1. json-lib-2.4-jdk15.jar        目前最新版, 下载地址  http://sourceforge.net/projects/json-lib/files/

2. HttpClient            用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包 。 下载地址 http://hc.apache.org/downloads.cgi

3. commons Lang   这一组API是提供一些基础的、通用的操作和处理,如自动生成toString()的结果 。 下载地址  http://commons.apache.org/lang/download_lang.cgi

4. Commons Logging   Apache通用日志工具 http://commons.apache.org/logging/download_logging.cgi

5. Commons Collections  为Java标准的Collections API提供了相当好的补充   下载地址 http://commons.apache.org/collections/download_collections.cgi

6. Commons BeanUtils  利用反射机制对JavaBean的属性进行处理 下载地址 http://commons.apache.org/beanutils/download_beanutils.cgi

7. EZMorph  是一个简单的java类库用于将一种对象转换成另外一种对象 下载地址 http://sourceforge.net/projects/ezmorph/files/


实例展示

java Object ==> json

1. java Array ==>json string

		String[] strArry = new String[]{"oscar1","oscar2","oscar3"};
		JSONArray jsArray = JSONArray.fromObject(strArry);
		String sJSONStr1 = jsArray.toString();
		System.out.println(sJSONStr1);
==>["oscar1","oscar2","oscar3"]

2.  java List ==> json string

		List<String> list = new ArrayList<String>();
		list.add("id");
		list.add("name");
		JSONArray jsArray = JSONArray.fromObject(list);
		String sJSONStr =  jsArray.toString();
		System.out.println(sJSONStr);

==> ["id","name"]


3. Java Map ==> json string

		Map<String,Object> map = new HashMap<String,Object>();
		map.put("id", 1);
		map.put("name", "Oscar");
		JSONObject json = JSONObject.fromObject(map);
		String sJSONStr1 =  json.toString();
		System.out.println(sJSONStr1);
==> {"id":1,"name":"Oscar"}


4. use JSONObject and JSONarray ==> json string

		JSONObject jsobj = new JSONObject();
		jsobj.put("id", 1);
		jsobj.put("name", "oscar");
		
		JSONArray jsArray = new JSONArray();
		JSONObject jsobj2 = new JSONObject();
		jsobj2.put("day1", "65");
		jsobj2.put("day2", "66");
		jsArray.add(jsobj2);
		
		jsobj.element("weight", jsArray);
		String sJSONStr = jsobj.toString();
		System.out.println(sJSONStr);

{"id":1,"name":"oscar","weight":[{"day1":"65","day2":"66"}]}




1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:3293369次
    • 积分:24369
    • 等级:
    • 排名:第255名
    • 原创:446篇
    • 转载:68篇
    • 译文:3篇
    • 评论:307条
    博客专栏
    Ext JS

    文章:43篇

    阅读:199592
    PLM

    文章:28篇

    阅读:49503
    Web Chart

    文章:15篇

    阅读:51958
    最新评论