码迷,mamicode.com
首页 > 编程语言 > 详细

java 使用json-lib 对象,String,json互转

时间:2014-10-26 22:29:41      阅读:209      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   io   ar   使用   java   sp   div   

所使用的包:

 commons-beanutils.jar

commons-collections-3.1.jar

commons-lang.jar

commons-logging-1.1.3.jar

ezmorph-1.0.jar

json-lib-2.2.2-jdk15.jar

 

 先看json和String的互转

 User.java   user对象

package test;


public class User {
    
    String id;
    String name;
    int age;
    
              //省略get set
}
    


json.java

package test;

import net.sf.json.JSONObject;

public class Json{
    
    public static void main(String[] args) {
        
        //String 转json
        String text ="{‘id‘:‘001‘,‘name‘:‘jack‘,‘age‘:22}";
        JSONObject jo =JSONObject.fromObject(text);
        System.out.println(jo.get("id") +"__"+ jo.get("name") +"___" +  jo.getInt("age"));

//String 转对象 等于是先转成json然后转对象 String text2="{‘id‘:‘002‘,‘name‘:‘lion‘,‘age‘:23}"; User u1 = (User)JSONObject.toBean(JSONObject.fromObject(text2), User.class); System.out.println(u1.getId()+"___"+u1.getName()+"__"+u1.getAge());
//对象转json User u =new User(); u.setId("003"); u.setAge(25); u.setName("Tom"); JSONObject jo2 =JSONObject.fromObject(u); System.out.println(jo2); System.out.println(jo2.get("name")); } }

打印输出

001__jack___22
002___lion__23
{"age":25,"id":"003","name":"Tom"}
Tom

 

给User.java 增加一个新属性book

package test;


public class User {
    
    String id;
    String name;
    int age;
    Book book;
    
    
// get  set 
    

}

Book.java

package test;

public class Book {
    String id;
    String name;
    //get  set 
}

那么把user 转成json是什么样的呢?

package test;

import net.sf.json.JSONObject;

public class Json {
    
    public static void main(String[] args) {
        
     Book book =new Book();
     book .setId("111");
     book.setName("语文");
     
     User u =new User();
     u.setId("002");
     u.setName("xim");
     u.setBook(book);
     
     JSONObject jo =JSONObject.fromObject(u);
     System.out.println(jo);
        
    }


}

输出打印

{"age":0,"book":{"id":"111","name":"语文"},"id":"002","name":"xim"}

 

互转方法与第一种相同。

 

 

 

 

  

java 使用json-lib 对象,String,json互转

标签:style   blog   color   io   ar   使用   java   sp   div   

原文地址:http://www.cnblogs.com/Marvellous/p/4052849.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!