com.alibaba.fastjson.JSONObject与net.sf.json.JSONObject之对象与JSON转换方法的区别

邮差的信 提交于 2020-03-27 09:34:43

一、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

 
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!