我正在尝试从数据库中获取数据,然后尝试使用ArrayList设置JSON文档中的值,但我无法做到这一点。 让我们说这是硬代码JSON,我想将其转换为动态JSON 查看plainprint? 注意:代码块中的文本内容是自动换行的
String json = "{ \"demo\":[[ \"Sam\",\"Sola\",\"Accun\"],[\"Raj\",\"Sanjosh\",\"CA\"],[\"Karan\",\"Toshi\",\"Java\"]]}";
现在,为了动态嵌入JSON行,我使用了ArrayList,如下所示: 查看plainprint? 注意:代码块中的文本内容是自动换行的
ArrayList<Object> al = new ArrayList<Object>();
.............some database code..........
while (result.next()) {
al.add("[ \"" + result.getString(1) + "\",
\""+ result.getString(3) + "\",
\"" + result.getString(4)+ "\",
\"" + result.getString(5) + "\",
\""+ result.getString(6) + "\",
\"" + result.getString(7)+ "\",
\"" + result.getString(8) + "\"]");
}
现在我想将此集合嵌入到JSON文档中。但不知道该怎么做。 查看plainprint? 注意:代码块中的文本内容是自动换行的
String h = "{ \"demo\":[ "+
for(Object o : al){
}
+"]}";
请指导我完成这个....谢谢!!!
答案 0 :(得分:1)
不使用手动尝试构建json,最好使用现有的库之一。看起来你想要生成的json是一个简单的映射,所以你可以这样做:
List<String> list = new ArrayList<String>();
list.add(result.getString(1));
list.add(result.getString(3));
//etc
Map<String, List<String>> map = new HashMap<String, List<String>>();
map.put("demo", list);
String json = new Gson().toJson(map);