com.alibaba.fastjson.JSONObject與net.sf.json.JSONObject之對象與JSON轉換方法的區別


一、com.alibaba.fastjson.JSONObject時經常會用到它的轉換方法,包括Java對象轉成JSON串、JSON對象,JSON串轉成java對象、JSON對象,JSON對象轉換Java對象、JSON串等,使用方法總結如下,持續更新...

1、Java對象-->JSON對象

(JSONObject)JSONObject.toJSON(Java對象實例)

復制代碼
 1 public class JSON2JavaTest{
 2     public static void main(String[] args) {
 3         Student stu = new Student("公眾號編程大道", "m", 2);
 4 
 5         //Java對象轉化為JSON對象
 6         JSONObject jsonObject = (JSONObject) JSONObject.toJSON(stu);
 7         System.out.println("Java對象轉化為JSON對象\n" + jsonObject);//{"name":"公眾號編程大道","age":2,"sex":"m"}
 8         
 9     }
10 }
復制代碼

2、Java對象-->JSON字符串

JSONObject.toJSONString(Java對象實例)

復制代碼
1 public class JSON2JavaTest{
2     public static void main(String[] args) {
3         Student stu = new Student("公眾號編程大道", "m", 2);
4 
5         //Java對象轉換成JSON字符串
6         String stuString = JSONObject.toJSONString(stu);
7         System.out.println("Java對象轉換成JSON字符串\n" + stuString);//{"age":2,"name":"公眾號編程大道","sex":"m"}
8     }
9 }
復制代碼

 3、JSON對象-->JSON字符串

JSONObject.toJSONString();

復制代碼
 1 public class JSON2JavaTest{
 2     public static void main(String[] args) {
 3         Student stu = new Student("公眾號編程大道", "m", 2);
 4 
 5         //先轉成JSON對象
 6         JSONObject jsonObject = (JSONObject) JSONObject.toJSON(stu);
 7 
 8         //JSON對象轉換為JSON字符串
 9         String jsonString = jsonObject.toJSONString();
10         System.out.println("JSON對象轉換為JSON字符串\n" + jsonString);//{"name":"公眾號編程大道","age":2,"sex":"m"}
11 
12     }
13 }
復制代碼

 4、JSON對象-->Java對象

 JSONObject.toJavaObject(JSON對象實例, Java對象.class);

復制代碼
public class JSON2JavaTest{
    public static void main(String[] args) {
        Student stu = new Student("公眾號編程大道", "m", 2);

        //先轉成JSON對象
        JSONObject jsonObject = (JSONObject) JSONObject.toJSON(stu);
        
        //JSON對象轉換成Java對象
        Student student = JSONObject.toJavaObject(jsonObject, Student.class);
        System.out.println("JSON對象轉換成Java對象\n" + student);//Student{name='公眾號編程大道', sex='m', age=2}
    }
}
復制代碼

 5、JSON字符串-->JSON對象

JSONObject.parseObject(JSON字符串)

復制代碼
 1 public class JSON2JavaTest{
 2     public static void main(String[] args) {
 3         String stuString = "{\"age\":2,\"name\":\"公眾號編程大道\",\"sex\":\"m\"}";
 4 
 5         //JSON字符串轉換成JSON對象
 6         JSONObject jsonObject1 = JSONObject.parseObject(stuString);
 7         System.out.println("JSON字符串轉換成JSON對象\n" + jsonObject1);//{"sex":"m","name":"公眾號編程大道","age":2}
 8     }
 9 }
復制代碼

 6、JSON字符串-->Java對象

JSONObject.parseObject(JSON字符串, Java對象.class);

復制代碼
1 public class JSON2JavaTest{
2     public static void main(String[] args) {
3         String stuString = "{\"age\":2,\"name\":\"公眾號編程大道\",\"sex\":\"m\"}";
4 
5         //JSON字符串轉換成Java對象
6         Student student1 = JSONObject.parseObject(stuString, Student.class);
7         System.out.println("JSON字符串轉換成Java對象\n" + student1);//Student{name='公眾號編程大道', sex='m', age=2}
8     }
9 }
復制代碼

 

二、net.sf.json.JSONObject之對象與JSON轉換方法

 

  
            DataInfo info=newDataInfo;
              //java對象轉string String dataInfo=JSONObject.fromObject(info).toString(); //對data進行ASE加密后在進行BASE64 //BASE64Util.encode(AESUtils.encrypt(dataInfo, asekey)); //json字符串轉json對象 JSONObject jsonObject = JSONObject.fromObject(BASE64Util.encode(AESUtils.encrypt(dataInfo, asekey))); //json對象轉java對象 DataInfo dInfo = (DataInfo)JSONObject.toBean(jsonObject,DataInfo.class);

  

注:第一部分阿里json轉載於:https://www.cnblogs.com/ibigboy/p/11124524.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM