我从一个外部源(数据库)获取json字符串,我需要将这些字符串收集到一个map结果中(key是record key,value实际上是一个包含json格式数据的字符串)。例如,我将从db获得3条记录,如下所示:
"record1", "{ "type":"recType1", "data": "somedata" }"
"record2", "{ "type":"recType1", "data": "someotherdata" }"
"recrod3", "{ "type":"recType1", "data": "yetanotherdata" }"
我不想解析回复中json的数据(不需要)。如果我把它们作为“string”添加,那么我会得到“escaped(\”),这当然是个问题。例如,上面的record1值如下所示:
"{ \"type\":\"recType1\", \"data\": \"somedata\" }"
如何创建一个将它们结合在一起的json?有没有一种方法可以“透明地”添加某个内容,而不需要内部序列化程序对其进行处理,该序列化程序会转义该值的内容?
3条答案
按热度按时间wmomyfyw1#
下面是显示问题的示例代码:
如果获取结果,则从db检索到的每个json文档都将从Map中序列化为字符串,结果是json中的“all”被转义。
7ivaypg92#
您可以为从json获取的对象创建java类,使用gson 2.0 api将其解析为java对象arraylist。
提取并创建Map。
注意:gson2.0已经根据您的类处理了所有要正确解析的数据类型。
gmol16393#
我能想到的最简单的方法是eval()函数,这里是一个使用json对象的示例:
这将把您的对象解析为javascript代码,您可以检索您的值。干杯。