java - 使用 foreach 循环创建 JSON 文档

标签 java json

我试图从数据库中获取数据,然后尝试使用 ArrayList 设置 JSON 文档中的值,但我无法做到这一点。 可以说这是硬代码 JSON,我想将其转换为动态 JSON 查看明文? 注意:代码块中的文本内容会自动换行

String json = "{ \"demo\":[[ \"Sam\",\"Sola\",\"Accun\"],[\"Raj\",\"Sanjosh\",\"CA\"],[\"Karan\",\"Toshi\",\"Java\"]]}";  

现在,为了动态嵌入 JSON 行,我使用了 ArrayList,如下所示: 查看明文? 注意:代码块中的文本内容会自动换行

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 文档中。但不知道该怎么做。 查看明文? 注意:代码块中的文本内容会自动换行

    String h =  "{ \"demo\":[ "+  
        for(Object o : al){  

        }  
         +"]}";  

请指导我解决这个问题......谢谢!

最佳答案

您最好使用现有的库之一,而不是手动尝试构建 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);

关于java - 使用 foreach 循环创建 JSON 文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23250658/

相关文章:

java - 尽管之前在 AsyncTask 类中定义过,但 JSON 对象为 null?

json - 在circe中合并几个json数组

php - PHP 中的 MySQL 查询

java - 如何在Java中的记事本中打开.log文件?

java - Android 带有数字的字符串资源

Java String.split : Trouble using\\W as non word delimiter

java - 通用列表和通用数组

java - mongoTemplate.save() 一个抽象类

javascript - 将我的 CheckBox 列表值发送到 Json

php - 如何在没有键的情况下将 JSON 数据转换为数组?