`
huibin
  • 浏览: 756982 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

基于json-lib.jar包 JSONObject-Java常用的四种用法

    博客分类:
  • JSON
阅读更多

基于json-lib.jar包Json实例程序
1.JSONObject to DynaBean
String json = "{name=\"json\",bool:true,int:1,double:2.2}";
JSONObject jsonObject = JSONObject.fromObject(json);
//抽象的写法:DynaBean bean = (DynaBean) JSONSerializer.toJava( jsonObject );  
Object bean = JSONObject.toBean(jsonObject);
//Object bean1 = JSONSerializer.toJava(jsonObject);
assertEquals(jsonObject.get("name"), PropertyUtils.getProperty(bean, "name"));
assertEquals(jsonObject.get("bool"), PropertyUtils.getProperty(bean, "bool"));
assertEquals(jsonObject.get("int"), PropertyUtils.getProperty(bean, "int"));
assertEquals(jsonObject.get("double"), PropertyUtils.getProperty(bean, "double"));

2.JSONObject to JavaBean
String json = "{name:\"zhangsan\",age:25,hight:1.72,sex:true}";
JSONObject jsonObject = JSONObject.fromObject(json);
UserBean bean = (UserBean) JSONObject.toBean(jsonObject, UserBean.class);
System.out.println(jsonObject);
理论上,这样就可以了,但时,有异常Caused by: java.lang.NoSuchMethodException: com.json.Json$UserBean.<init>()

3.JSONArray to List

String json = "[\"first\",\"second\"]";
JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON(json);
List output = (List) JSONSerializer.toJava(jsonArray);
  
4.JSONArray to array
String json = "[\"first\",\"second\"]";
JSONArray jsonArray = (JSONArray) JSONSerializer.toJSON(json);
JsonConfig jsonConfig = new JsonConfig();
jsonConfig.setArrayMode(JsonConfig.MODE_OBJECT_ARRAY);
Object[] output = (Object[]) JSONSerializer.toJava(jsonArray, jsonConfig);
Object[] expected = new Object[] { "first", "second" };
ArrayAssertions.assertEquals(expected, output);

5.JSON 字符串 专为 JavaBean(刘慧斌demo 演示需要的jar包在附件里)

String str="[{\"id\":\"328\",\"mestype\":\"inbox\"},{\"id\":\"327\",\"mestype\":\"inbox\"},{\"id\":\"279\",\"mestype\":\"already\"},{\"id\":\"278\",\"mestype\":\"already\"},{\"id\":\"277\",\"mestype\":\"already\"},{\"id\":\"310\",\"mestype\":\"inbox\"},{\"id\":\"308\",\"mestype\":\"inbox\"},{\"id\":\"305\",\"mestype\":\"inbox\"},{\"id\":\"304\",\"mestype\":\"inbox\"},{\"id\":\"303\",\"mestype\":\"inbox\"}]";
  JSONArray  jsonArray=(JSONArray) JSONSerializer.toJSON(str);
  List list=(List)JSONSerializer.toJava(jsonArray);
        for (Object  obj: list) {
         JSONObject jsonObject = JSONObject.fromObject(obj);
      MessageBean bean = (MessageBean) JSONObject.toBean(jsonObject, MessageBean.class);
   String id=bean.getId()+"";
   String type=bean.getMestype();
   System.out.println(id+" "+type);
  }
  System.out.println(list.size());

分享到:
评论
1 楼 gqzyyxh 2010-10-28  
你好,请问下
commons-logging.jar,commons-lang-2.3.jar,
commons-collections-3.2.jar,commons-beanutils.jar,这四个jar包有什么作用呢,我只用到了json-lib-2.2.3-jdk15.jar和ezmorph-1.0.4.jar这2个jar包。想先了解下,以后遇到错误就不头疼了。另外我看到公司的SSH框架的系统里还有
json-lib-ext-spring-1.0.1.jar这个jar包,是做什么的呢?期待你的解答,谢谢~

相关推荐

    json-lib.jar

    JSON-lib.jar是Java平台上的一个库,用于处理JSON数据,特别适用于Java开发者在他们的应用程序中实现JSON的序列化和反序列化。 在Java中,处理JSON通常涉及两个主要任务:将Java对象转换为JSON字符串(序列化),...

    json-lib-2.3.jar

    描述中提到的`JsonObject.fromObject()`方法是json-lib中用来将一个Java对象转换为JSON对象的方法。例如,如果你有一个Java的HashMap对象,你可以通过调用`JsonObject.fromObject(map)`将其转化为JSON格式,以便在...

    json-lib-2.4-jdk15.jar

    2. **Java对象到JSON的转换**:json-lib支持将Java对象如HashMap、ArrayList等直接转换成JSON格式,如`JSONObject.fromObject()`和`JSONArray.fromObject()`方法。 3. **JSON到Java对象的反序列化**:反之,它也...

    JSON-lib包json-lib-0.8.jar和json-lib-0.9.jar包

    6. **API使用**:理解JSON-lib提供的核心类,如JSONObject、JSONArray、JSONUtil等,以及它们的方法,是有效使用此库的关键。开发者需要学习如何创建、读取、修改JSON对象和数组,以及如何在Java对象和JSON数据之间...

    json-lib-2.2.3-jdk15.jar

    2. 创建JSON对象:使用JSON-lib提供的方法将Java对象转化为JSON对象,例如使用`net.sf.json.JSONObject`或`net.sf.json.JSONArray`。 3. 序列化和反序列化:通过`fromObject()`和`toObject()`方法将Java对象序列...

    json-lib.jar及其所有依赖包

    总之,`json-lib.jar`及其依赖包提供了一个完整的解决方案,使得在Java环境下处理JSON数据变得更加便捷。但需要注意的是,随着技术的发展,更现代的JSON库,如Gson、Jackson和Fastjson等,已经出现了,它们在性能和...

    json-lib-2.2.2-jdk15.jar

    3. **自定义序列化**:通过实现JSONAware接口或使用JSONSerializer的transform方法,开发者可以定制JSON序列化过程,比如忽略某些属性或者自定义特定字段的格式。 4. **性能优化**:虽然json-lib是一个强大的库,但...

    jsonlib需要jar包

    在实际使用`json-lib`时,你可以使用以下方法将Java对象转换为JSON格式: ```java import net.sf.json.JSONObject; import net.sf.json.util.JSONConfig; // 创建一个Java对象 Map, Object&gt; myObject = new ...

    json-lib应用所有jar

    JSON-lib是Java平台上的一个库,它提供了一种方便的方式来序列化和反序列化Java对象为JSON格式,以及从JSON字符串恢复Java对象。这个库在处理JSON数据时非常实用,特别是对于那些需要在服务器端和客户端之间进行数据...

    json-lib-2.4-jdk15.jar及其相关依赖

    `json-lib`的使用方法通常包括以下步骤: 1. **引入依赖**: 首先,你需要在项目中引入`json-lib-2.4-jdk15.jar`。如果是Maven项目,可以通过添加依赖到pom.xml文件来实现: ```xml &lt;groupId&gt;net.sf.json-lib&lt;/...

    JSONObject对象依赖的jar包,json-lib-2.4-jdk15,commons-beanutils,commons-collections

    在web项目中经常会用到json数据(如:struts2处理请求返回json数据给jsp解析),因此,JSONObject对象是必备的,这时就需要引入相关的jar包了。 json所需要的jar包如下: json-lib-2.4-jdk15.jar json所依赖的jar...

    json-lib-2.3-jdk15基础jar包合辑

    JSON Lib是一个Java库,它提供了将Java对象转换为JSON格式,以及将JSON文本解析回等效Java对象的功能。这个库支持多种Java类型,包括基本类型、集合、Map、自定义Java类等,使得在Java应用程序中处理JSON变得简单。 ...

    org.json.JSONObject jar包

    org.json.JSONObject的6个jar包 commons-beanutils;commons-collections;commons-lang;commons-logging;ezmorph;json-lib

    com.alibaba.fastjson.JSON , net.sf.json.JSONObject

    JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,被广泛用于Web服务和应用程序之间的数据传输。在Java开发中,处理JSON数据时通常会用到一些库,如`com.alibaba.fastjson.JSON` 和 `...

    net.sf.json.JsonObject需要的jar包

    在Java开发中,`net.sf.json.JSONObject` 是一个常用的JSON对象模型类,它来自于开源项目json-lib。这个库提供了一种方便的方式来处理JSON(JavaScript Object Notation)数据格式,允许我们在Java应用程序中创建、...

    net.sf.json.JSONObject需要的jar包

    net.sf.json.JSONObject所需要的jar包 commons-beanutils-1.9.3.jar commons-collections-3.2.2 commons-lang-2.6 commons-logging-1.2 ezmorph-1.0.6 json-lib-2.4-jdk15

    json-lib-2.4和相应的依赖包

    4. **生成JSON**:使用`toString()`或`toJSONString()`方法将Java对象转换为JSON字符串,如`jsonObject.toString()`。 5. **处理复杂类型**:对于复杂的Java对象,如自定义类,可以使用`JSONSerializer`进行序列化...

    json-lib-2.4 jar 程序文件

    这个jar包包含了一系列类和方法,允许开发者方便地将Java对象序列化为JSON字符串,或者从JSON字符串反序列化为Java对象。 在使用`json-lib-2.4 jar`之前,需要将其添加到项目的类路径中。这通常通过在构建工具(如...

Global site tag (gtag.js) - Google Analytics