Java之使用json-lib进行对象与json字符串之间的转换

来源:互联网 发布:更改电脑mac地址 编辑:程序博客网 时间:2024/06/03 01:18

1、首先需要下载json-lib-2.4-jdk15.jar包。

下载地址:http://sourceforge.net/projects/json-lib/files/json-lib/json-lib-2.4/。也可以下载到源码

其他需要的jar:

a.commons-beanutils.jar

b.commons-collections.jar

c.commons-lang.jar

d.commons-logging.jar

e.ezmorph-1.0.6.jar

2、主要使用JSONObject进行对象与Json字符串之间的转换

方法:fromObject(object)

          把对象转换为JSONObject对象,使用toString方法就可以获取json字符串

          这个方法既可以传入对象,也可以传入json字符串

方法:toBean(JSONObject, class)

          把json字符串转为对象

示例:

[java] view plain copy
  1. public static void main(String[] args) {  
  2.         Student student = new Student("cb"24"04050102");   
  3.         JSONObject object = JSONObject.fromObject(student);  
  4.         String json = object.toString();  
  5.         System.out.println(json);  
  6.         JSONObject jO = JSONObject.fromObject(object.toString());  
  7.         Object object2 = JSONObject.toBean(jO, Student.class);  
  8.         Student student2  = (Student)object2;  
  9.         System.out.println(student2.getClassName());  
  10.     }  


 

Student类

[java] view plain copy
  1. public class Student {  
  2.     private Person mPerson;  
  3.     private String mClassName;  
  4.       
  5.     public Student() {  
  6.           
  7.     }  
  8.       
  9.     public Student(String name, int age, String className) {  
  10.         mPerson = new Person(name, age);  
  11.         mClassName = className;  
  12.     }  
  13.       
  14.     public Person getPerson() {  
  15.         return mPerson;  
  16.     }  
  17.       
  18.     public void setPerson(Person person) {  
  19.         mPerson = person;  
  20.     }  
  21.       
  22.     public String getClassName() {  
  23.         return mClassName;  
  24.     }  
  25.       
  26.     public void setClassName(String className) {  
  27.         mClassName = className;  
  28.     }  
  29. }  


 

Person类

[java] view plain copy
  1. public class Person {  
  2.     private String mName;  
  3.     private int mAge;  
  4.       
  5.     public Person() {  
  6.           
  7.     }  
  8.       
  9.     public Person(String name, int age) {  
  10.         mName = name;  
  11.         mAge = age;  
  12.     }  
  13.       
  14.     public String getName() {  
  15.         return mName;  
  16.     }  
  17.       
  18.     public void setName(String name) {  
  19.         mName = name;  
  20.     }  
  21.       
  22.     public int getAge() {  
  23.         return mAge;  
  24.     }  
  25.       
  26.     public void setAge(int age) {  
  27.         mAge = age;  
  28.     }  
  29. }  

 

源码下载点击打开链接

0 0
原创粉丝点击