Json 与 对象 之间相互转换

1、json转对象   使用  readValue()

2、对象转json  使用   writeValueAsString(); writeValue()

3、直接解析json  使用   readTree()

private static final ObjectMapper MAPPER = new ObjectMapper();

    .......

    .......


    /**
    *情况一:json 转 对象
    */
    
    String json = this.redisUtils.get("itemDesc_" + itemId);
    if (StringUtils.isNoneBlank(json)) {
	  ItemDesc itemDese = MAPPER.readValue(json, ItemDesc.class);
        }
    

    /**
    *情况二:对象 转 json
    */   

    PicUploadResult picUploadResult = new PicUploadResult();
    String json = MAPPER.writeValueAsString(picUploadResult);

    

    /**
    *情况三:直接解析 json
    */
    
        //获取消息的内容{"itemId":1474391930,"type":"save"}
	String json = textMessage.getText();		
	if(StringUtils.isNotBlank(json)) {
           //解析消息内容
   	   JsonNode jsonNode = MAPPER.readTree(json);
    }



补充:

writeValue  与   writeValueAsString 对比

格式对比:
writeValue(参数,obj):直接将传入的对象序列化为json,并且返回给客户端
writeValueAsString(obj):将传入的对象序列化为json,返回给调用者
不同:
writeValue(参数,obj):
参数有四种重载形式
第一种:file 将转换后的json字符串保存到指定的file文件中
第二种:writer 将转换后的json字符串保存到字符输出流中
第二种:outputStream将转换后的json字符串保存到字节输出流中
 

猜你喜欢

转载自blog.csdn.net/weixin_42633481/article/details/107705291