1、 首先要去官方下载json-lib工具包
下载地址:
http://sourceforge.net/projects/json-lib/files/json-lib/json-lib-2.4/
目前最新的是2.4的版本,本示例中使用的是v2.3;json-lib还需要以下依赖包:
jakarta commons-lang 2.5
jakarta commons-beanutils 1.8.0
jakarta commons-collections 3.2.1
jakarta commons-logging 1.1.1
ezmorph 1.0.6
官方网址:http://json-lib.sourceforge.net/
然后在工程中添加如下jar包:
当然你也可以用2.4的json-lib库
你可以在这里看看官方提供的示例:
http://json-lib.sourceforge.net/usage.html
由于本次介绍的示例需要junit工具,所以你还需要添加junit的jar文件,版本是4.8.2版本的,下载地址:https://github.com/KentBeck/junit/downloads
如果你还不了解JSON是什么?那么你应该可以看看http://www.json.org/json-zh.html
2、 将JavaList集合转换成JSON字符串
/** * <b>function:</b>转换Java List集合到JSON * @author hoojo * @createDate Nov 28, 2010 2:36:15 PM */ @Test public void writeList2JSON() { fail("==============Java List >>> JSON Array=================="); List<Student> stu = new ArrayList<Student>(); stu.add(bean); bean.setName("jack"); stu.add(bean); fail(JSONArray.fromObject(stu).toString()); fail(JSONSerializer.toJSON(stu).toString()); }
运行此方法后,可以看到控制台输出:
==============Java List >>> JSON Array==================
如果你是转换List集合,一定得用JSONArray或是JSONSrializer提供的序列化方法。如果你用JSONObject.fromObject方法转换List会出现异常,通常使用JSONSrializer这个JSON序列化的方法,它会自动识别你传递的对象的类型,然后转换成相应的JSON字符串。
3、 将Map集合转换成JSON对象
/** * <b>function:</b>转Java Map对象到JSON * @author hoojo * @createDate Nov 28, 2010 2:37:35 PM */ @Test public void writeMap2JSON() { Map<String, Object> map = new HashMap<String, Object>(); map.put("A", bean); bean.setName("jack"); map.put("B", bean); map.put("name", "json"); map.put("bool", Boolean.TRUE); map.put("int", new Integer(1)); map.put("arr", new String[] { "a", "b" }); map.put("func", "function(i){ return this.arr[i]; }"); fail("==============Java Map >>> JSON Object=================="); fail(JSONObject.fromObject(map).toString()); fail("==============Java Map >>> JSON Array =================="); fail(JSONArray.fromObject(map).toString()); fail("==============Java Map >>> JSON Object=================="); fail(JSONSerializer.toJSON(map).toString()); }
转载:
http://www.cnblogs.com/hoojo/archive/2011/04/21/2023805.html
4、json 数据转换为JSON java对象 ,然后获得其中的数据。
String str = {"username":"me"} JSONObject json = JSONObject.fromObject( str ); json.getString("usename")
创建JSON对象返回到客户端
JSONArray json = new JSONArray() ; json.add(0,"OK"); json.add(1, new ArrayList()); this.getResponse().setContentType("text/html;charset=UTF-8"); this.getResponse().getWriter().println(json); this.getResponse().getWriter().flush();
5、java中的LIST对象转换为json对象然后返回到客户端
SysUser user = new SysUser(); user.setUsername("sdfsjkd"); user.setCreatetime(new Date()); SysUser user2 = new SysUser(); user2.setUsername("sdfsjkd"); user2.setCreatetime(new Date()); System.out.println( new Date() ); list.add( user); list.add( user2); System.out.println(JSONArray.fromObject( list) ) ; PrintWriter print = this.getResponse().getWriter(); print.write( JSONArray.fromObject( list).toString() ) ;
6 附件中是一个测试例子。
7 Map 中含有list<实体> ,这样的数据,转化为json字符串后,解析
先转化为Map ,从map中拿出list对应的字符串,然后将list转为对应的 list<实体>数据
JSONObject map5 = JSONObject.fromObject(str ) ; List<实体> list5 = JSONArray.toList(JSONArray.fromObject(map5.get("list") ), 实体.class); System.out.println( list5 ); System.out.println( map5.get("result"));
相关推荐
JSON-lib框架提供了多种方法来处理JSON,包括XML到JSON和JSON到XML的转换,使得在XML和JSON之间进行数据交换变得更加方便。这个库特别适合那些需要在Java应用程序中处理这两种格式的开发人员。在XML和JSON之间转换时...
在《JSON-lib框架,转换JSON、XML不再困难》的学习笔记中,可能涉及以下几个关键知识点: 1. JSON基础:JSON是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。它基于JavaScript的一个子集...
### JSON-lib框架详解:转换JSON、XML不再困难 #### 一、概述 JSON-lib是一个用于Java平台的强大且灵活的库,它可以实现Java对象与JSON、XML格式数据之间的互相转换。对于那些希望在Java应用程序中轻松处理JSON或...
在实际开发中,JSON-Lib通常与其他Java Web框架结合使用,如Spring MVC,以实现RESTful API的数据交换。开发者需要在项目中引入JSON-Lib的jar包,包括主库和其依赖,确保所有必要的类和方法都能被正确加载。 总结...
json-lib是一个Java库,用于将Java对象转换为JSON格式,反之亦然。该库特别适用于处理复杂的Java对象并将其转换为JSON字符串,以便在服务器和客户端之间进行数据交换。 在这个“json-lib-2.4-jdk13对应jar包大全”...
在Java世界里,`json-lib-2.1.jar` 是一个用于处理JSON的库,它提供了一系列的方法来将Java对象转换为JSON格式,以及将JSON字符串反序列化回Java对象。这个库支持多种Java类型,包括基本类型、集合、Map、自定义Java...
压缩包中的文件"JSON-lib框架.txt"很可能包含了关于如何使用json-lib库的文档或教程,包括可能的API引用、使用示例和注意事项。另一个文件"json-lib-2.4-jdk15.jar"是json-lib库的主要组件,适用于JDK 1.5环境。这...
1. `commons-collections-3.2.1.jar`:Apache Commons Collections库,提供了大量的集合框架增强功能,如新的集合实现、迭代器、生成器和工厂,以及各种算法,这对于`json-lib`处理复杂数据结构时非常有帮助。...
`json-lib`是一个Java库,它提供了一种将Java对象转换为JSON表示,以及将JSON内容反序列化回Java对象的机制。`json-lib-2.4-jdk15.jar`是该库的一个特定版本,适用于JDK 1.5环境。这个版本的jar文件包含了处理JSON...
- **数据存储**:在持久化框架如Hibernate中,JSON Lib可以用于将Java对象转换成JSON字符串,方便存储到数据库的JSON字段。 - **前端交互**:后端开发中,通过JSON格式与前端JavaScript进行数据交互,JSON Lib简化了...
4. **支持多种Java框架**:`json-lib`兼容多种Java框架,如Spring、Hibernate等,这使得在这些框架下处理JSON更加简便。 5. **性能优化**:通过优化算法和数据结构,`json-lib`在处理大规模数据时能保持良好的性能...
2. `commons-collections.jar`:Apache Commons Collections库,提供了一系列实用的集合框架扩展,如更强大的映射、列表和堆栈实现,这对`json-lib`处理数据结构时非常有用。 3. `commons-lang-2.4.jar`:Apache ...
1. `commons-collections-3.2.1.jar`:Apache Commons Collections是Java集合框架的一个扩展,提供了许多实用的集合类、迭代器、工厂和算法,增强了Java的集合操作能力,对于json-lib的处理可能涉及到数据结构的转换...
6. **commons-collections-*.jar**:Apache Commons Collections提供了集合框架的扩展,json-lib可能利用这个库来处理和转换集合对象。 7. **xom-*.jar**:XOM是一个XML解析库,如果json-lib需要处理XML与JSON之间...
3. **兼容性**:json-lib兼容多种Java框架,如Spring、Struts等,这使得它能够无缝集成到现有的项目中。此外,它也支持Eclipse、IDEA等主流开发工具,方便开发人员进行调试和开发。 4. **性能优化**:json-lib通过...
在Web开发中,`json-lib`常与Spring框架、Struts等结合使用,实现前后端数据的传递。同时,由于其体积小、性能好,即使在移动设备或资源有限的环境中,`json-lib`也是理想的选择。 总的来说,`json-lib`是一个强大...
在json-lib中,它被用作日志记录的基础,使得json-lib可以透明地支持多种日志框架,如log4j、java.util.logging等。 使用这两个JAR文件,开发者可以在他们的Java项目中集成JSON功能。例如,要将一个Java对象转换为...