`
heartneo
  • 浏览: 65244 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

json转换json-lib

阅读更多
刚刚学习了下json-lib,确实很好用,分享一些自己的例子。


使用json-lib 可以把json字符串与java bean、list等相互转换,官网:http://json-lib.sourceforge.net

userbean
public class User {
    private int id;
    private String name;
    private String birthday;
    //get set 方法.....
}

beanlist
public class ListUser {
     private List users;
     //get set 方法
}

测试类
public class Json {
public static void main(String[] args) {
      List list = new ArrayList();  
      for (int i = 0; i < 2; i++) {
            User user = new User();
            user.setId(i);
            user.setName("heartneo"+i);
            user.setBirthday("06/04/2012");
            list.add(user);
       }
       JSONArray jsonArray = JSONArray.fromObject(list); //list转换成json 
       String jsonStr = "{\"users\":" + jsonArray + "}";//手动添加根节点
       System.out.println(jsonArray);
       System.out.println(jsonStr);
       list.clear();
       list = (List) JSONArray.toCollection(jsonArray, User.class);//得到的json转换回list
       System.out.println(((User)list.get(0)).getName());
       //转换带更节点的json
       Map classMap = new HashMap();  
       classMap.put("users", User.class); //放入User类 
       ListUser users = (ListUser) JSONObject.toBean(JSONObject.fromObject(jsonStr), ListUser.class, classMap);//由于ListUser嵌套User所以转换时用这种方法
       System.out.println(users);
       JSONObject jsonObject = JSONObject.fromObject(users.getUsers().get(0)); //获取第一个对象
       User u = (User) JSONObject.toBean(jsonObject, User.class); //转换回bean 
       System.out.println(u.getName());
       }

}

输出结果
[{"birthday":"06/04/2012","id":0,"name":"heartneo0"},{"birthday":"06/04/2012","id":1,"name":"heartneo1"}]
{"users":[{"birthday":"06/04/2012","id":0,"name":"heartneo0"},{"birthday":"06/04/2012","id":1,"name":"heartneo1"}]}
heartneo0
ListUser@211d0a4f
heartneo0


附上代码和支持包。
分享到:
评论

相关推荐

    json-lib-2.4-jdk15.jar下载

    json-lib-2.4-jdk15.jar下载,json-lib是一款简单易用的Java JSON库。它可以将Java对象转换成JSON字符串,也可以将JSON字符串转换成Java对象。json-lib体积小、无依赖,性能表现也不错,适合在各种Java项目中使用。 ...

    json-lib-2.2.3-jdk15.jar

    该库名为`json-lib-2.2.3-jdk15.jar`,特别针对Java 1.5版本进行了优化。 JSON-lib的主要特点和功能包括: 1. **数据转换**:它支持将Java的各种类型,如Map、List、数组、自定义对象等,转换成JSON格式的字符串。...

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

    这在接收到JSON格式的响应时非常有用,可以将JSON转换回对应的Java对象以便进一步处理。 3. **XML与JSON互转**:JSON Lib还提供了XML和JSON之间的转换功能,使得两种数据交换格式可以灵活切换。 4. **处理复杂结构**...

    json-lib-2.4-jdk15.jar

    json-lib-2.4-jdk15.jar是json-lib的一个特定版本,适用于JDK 1.5环境。这个版本的库包含了一系列API和实现,使得开发人员能够无缝地在Java应用中使用JSON。它支持多种Java对象类型,包括Map、List、Set、自定义Java...

    json-lib-2.1.jar和struts2-json-plugin-2.1.8.1.jar

    在Java世界里,`json-lib-2.1.jar` 是一个用于处理JSON的库,它提供了一系列的方法来将Java对象转换为JSON格式,以及将JSON字符串反序列化回Java对象。这个库支持多种Java类型,包括基本类型、集合、Map、自定义Java...

    json-lib-2.2.2-jdk15.jar

    json-lib-2.2.2-jdk15.jar是JSON库的一个版本,特别针对Java 1.5(JDK 1.5)进行了优化。这个压缩包包含了json-lib库的二进制文件,用于在Android和Java平台上解析和生成JSON数据。尽管这个版本是针对JDK 1.5,但...

    json-lib-2.4-jdk15和全部依赖jar包

    1. **JSON转换**:`json-lib`提供了将Java对象如Map、List、自定义类等转换为JSON字符串的方法,同时也支持将JSON字符串解析为相应的Java对象。这在处理前后端交互或者存储和传输数据时非常有用。 2. **XML与JSON互...

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

    `json-lib-2.4-jdk15.jar`是这个库的一个特定版本,适用于JDK 1.5环境。 在Java开发中,`json-lib`库提供了多种将Java对象序列化为JSON字符串的方法,包括: 1. **Java Bean到JSON**: 只需传入一个Java Bean对象,...

    json-lib-2.3-jdk15开发包和所有依赖包

    `json-lib-2.3-jdk15`是这个库的一个特定版本,兼容JDK 1.5,这意味着它可以在运行JDK 1.5或更高版本的Java环境中使用。 在Java开发中,`json-lib`库提供了以下关键功能: 1. **JSON对象的创建与解析**:通过`...

    json-lib-2.4-jdk15.jar所需全部JAR包_JSON_

    `json-lib-2.4-jdk15.jar`是该库的一个特定版本,适用于JDK 1.5环境。这个版本的jar文件包含了处理JSON操作所需的类和方法,使得开发人员可以在他们的应用程序中方便地使用JSON。 在开发过程中,有时候`json-lib-...

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

    2. **Java对象到JSON转换**:反之,Java对象也可以被序列化为JSON字符串。这在生成JSON响应或存储JSON格式的数据时非常有用。 3. **XML和JSON之间的转换**:json-lib还支持XML与JSON之间的互换,这对于处理既有XML...

    json-lib-2.4-jdk13对应jar包大全

    这六个jar包的组合确保了json-lib能够在JDK 1.3环境中正常工作,能够处理各种复杂的数据结构,并进行高效的JSON转换。使用这些库,开发者可以轻松地在Java应用中集成JSON功能,无论是在服务器端处理HTTP请求,还是在...

    json-lib-2.4-jdk15所需要的jar包

    `json-lib-2.4-jdk15`是其中的一个版本,专为JDK 1.5设计,提供了对JSON对象与Java对象之间的转换功能。 标题中的“json-lib-2.4-jdk15所需要的jar包”指的是这个特定版本的JSON库的Java档案(JAR)文件,它包含了...

    json-lib-2.4-jdk15-sources.jar

    总的来说,`json-lib-2.4-jdk15-sources.jar`为开发者提供了一个强大的工具,不仅能够方便地处理JSON数据,还通过源码开放了学习和定制的空间,对于提升Java Web开发技能大有裨益。通过研究这个库,我们可以更好地...

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

    `json-lib-0.8.jar`是JSON-lib的0.8版本,它可能包含基础的JSON转换功能,如将Java对象转换为JSON字符串,以及反向操作,即将JSON字符串解析回Java对象。此外,它可能还支持JSON数组和JSON对象的创建、读取和修改。...

    ezmorph-1.0.6.jar和json-lib-2.2.2-jdk15.rar

    标题中的"ezmorph-1.0.6.jar"和"json-lib-2.2.2-jdk15.rar"指的是两个不同的Java库,用于处理数据转换和JSON操作。ezmorph是一个Java库,提供了对象到对象的转换功能,而json-lib是另一个库,专门用于处理JSON...

    json-lib-2.4-jdk15及其依赖jar包

    JSON-Lib-2.4-jdk15是JSON-Lib的一个特定版本,它针对JDK 1.5进行了优化,以适应该版本的Java环境。这个库包含了处理JSON的多种功能,包括将Java对象转换为JSON字符串,以及将JSON文本解析回相应的Java对象。这对于...

    json-lib-2.4-jdk15包及其依赖包

    json-lib-2.4-jdk 15及其全部依赖jar包 commons-beanutils-1.8.0.jar、commons-collections-3.2.1.jar、commons-lang-2.6.jar、commons-logging-1.1.1.jar、ezmorph-1.0.6.jar、json-lib-2.4-jdk15.jar

    json-lib-2.3.jar

    4. **JsonConfig**: 提供配置选项,可以定制JSON转换行为,如日期格式、null值处理等。 在实际开发中,使用json-lib进行JSON操作的步骤通常包括: 1. 导入json-lib库,如`import net.sf.json.JSONObject; import ...

Global site tag (gtag.js) - Google Analytics