Jackson 对象被序列化2次后, json字符串 里有反斜杠
·
比如一个map结构
{
"1001": {
"name": "zhangsan",
"age": 12
}
}
如果被序列化处理了2次
第一次:
String data = objectMapper.writeValueAsString(map);
第二次:
data = objectMapper.writeValueAsString(data);
// 此时的字符串是
"{\"1001\":{\"name\":\"zhangsan\"},\"age\":12}"
// 1.转成json字符串格式, 此处不能用toString(), 否则值还是之前的反斜杠格式
data = objectMapper.readTree(sensorsData).asText();
// 2.再次把json格式的字符串转回 map对象
Map<String, Map<String, Object>> dataMap = objectMapper.readValue(data,
new TypeReference<HashMap<String, Object>>() {
});
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)