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