从 LinkedHashMap 转换为 Json 字符串
·
问题:从 LinkedHashMap 转换为 Json 字符串
我正在使用 Jongo 与 Mongo 一起工作,当我进行查询时,我收到LinkedHashMap作为结果。
Iterator one = (Iterator) friends.find(query).projection("{_id:0}").as(Object.class);
while (one.hasNext()) {
LinkedHashMap data = new LinkedHashMap();
data = (LinkedHashMap) one.next();
String content = data.toString();
}
问题是如果json是{"user":"something"}内容将是{user=something},它不是json只是HashMap中的toString方法。
我怎样才能得到原来的JSON?
我没有class来映射response并且它不是创建map类的解决方案,这就是我使用Object.class.的原因
解答
如果您可以访问一些 JSON 库,那似乎就是要走的路。
如果使用 org.json 库,请使用public JSONObject(java.util.Map map):
String jsonString = new JSONObject(data).toString()
如果是Gson,使用@hellboy提到的gson.toJson()方法:
String jsonString = new Gson().toJson(data, Map.class);
更多推荐
所有评论(0)