JSON对象、JSON字符串和Java对象互相转

JSON对象、JSON字符串和Java对象互相转
  • Java对象转json字符串(一般使用字符串存储redis或者数据库)

    public static String toJSONString(Object object)

    String objStr = JSON.toJSONString(obj);
    
  • json字符串转json对象(中间类,其实主要为了转到java对象)

    public static JSONObject parseObject(String text)

    JSONObject jsonObject = JSONObject.parseObject(objStr);
    
  • json对象转java对象

    public static <T> T toJavaObject(JSON json, Class <T> clazz)

    Test test = JSONObject.toJavaObject(jsonObject, Test.class);
    
    public class JSONObject extends JSON 
        implements Map <String ,Object >, Cloneable, Serializable , InvocationHandler 
    

    因为JSONJSONObject的爸爸,所以,我们放jsonObject也可以。


合并起来就是:

  • Java转json字符串,就去入库就行了

    String objStr = JSON.toJSONString(obj);
    
  • json字符串转java对象,取出来直接当Java对象使用

    Test test = JSONObject.toJavaObject(
        JSONObject.parseObject(objStr), AccountBase.class);
    

扩展:

​ java对象转json字符串时候null"",多用于后台传对象给前端时候:

JSON.parseObject(JSON.toJSONString(testParam,SerializerFeature.WriteNullStringAsEmpty))

​ 返回json对象,直接丢到返回结果类的data域即可。

原文地址:https://www.cnblogs.com/Ddlm2wxm/p/14889918.html