一.org.json 解析器 (推荐使用,更适合于对象模型)
概述及例子: http://code.google.com/p/json-simple/
API: http://code.google.com/p/json-simple/
例(测试通过,注意延迟加载问题):
JSONArray jsona=new JSONArray();
JSONObject jsono=new JSONObject();
List<Author> l=authorDAO.findAll();
for(Author a:l){
jsono.put("author_num", a.getAuthorNam());
jsono.put("author_nam", a.getAuthorNum());
jsono.put("author_sex", a.getAuthorSex());
jsono.put("author_level", a.getLevel().getLevelNam());
jsono.put("author_department", a.getAuthorDepartment());
jsona.add(jsono.clone()); //jsono.clone()返回实例对象;jsono仅仅只是个指针
jsono.clear(); //必须清除内容以备下次调用.
}
二.json-lib 解析器
(1)所需依赖的类文件
Json-lib requires (at least) the following dependencies in your classpath:
- jakarta commons-lang 2.3 //appach网站下载最新的
- jakarta commons-beanutils 1.7.0 //appach网站下载最新的
- jakarta commons-collections 3.2 //appach网站下载最新的
- jakarta commons-logging 1.1 //appach网站下载最新的
- ezmorph 1.0.4
详见: http://json-lib.sourceforge.net/
(2)下载JSON-LIB-2.2.1,并查找 ezmorph 1.0.4 文件
https://sourceforge.net/project/showfiles.php?group_id=171425
(3)举例:
1import net.sf.json.JSONArray;
2
3
4
5boolean[] boolArray = new boolean[]{true,false,true};
6 JSONArray jsonArray1 = JSONArray.fromObject( boolArray );
7 System.out.println( jsonArray1 );
8 // prints [true,false,true]
9
10 List list = new ArrayList();
11 list.add( "first" );
12 list.add( "second" );
13 JSONArray jsonArray2 = JSONArray.fromObject( list );
14 System.out.println( jsonArray2 );
15 // prints ["first","second"]
16
17 JSONArray jsonArray3 = JSONArray.fromObject( "['json','is','easy']" );
18 System.out.println( jsonArray3 );
19 // prints ["json","is","easy"]
posted on 2008-05-28 16:16
紫蝶∏飛揚↗ 阅读(4781)
评论(4) 编辑 收藏 所属分类:
JSF 、
数据转换 、
Json