java - 如何使用循环(动态地)将 JsonObjects 添加到 javax.json.JsonArray

标签 java json

要将对象添加到 JsonArray,Oracle.com 上提供了以下示例代码。

JsonArray value = Json.createArrayBuilder()
 .add(Json.createObjectBuilder()
     .add("type", "home")
     .add("number", "212 555-1234"))
 .add(Json.createObjectBuilder()
     .add("type", "fax")
     .add("number", "646 555-4567"))
 .build();

实际上,我有一个 Servlet,它会从数据库中读取数据,并根据检索到的行数,将数据作为 JsonObject 添加到 JsonArray。为此,我所能想到的就是使用循环将 JsonObject 添加到 JsonArray 但它不起作用。这就是我在做什么。这里,

//Not working
JsonArray jarr = Json.createArrayBuilder()
    for (int i = 0; i < posts[i]; i++)
    {
        .add(Json.createObjectBuilder()
            .add("post", posts[i])
            .add("id", ids[i]))
    }
        .build();

这是我第一次使用 Java Json API。将对象动态添加到 JsonArray 的正确方法是什么。

最佳答案

您发布的内容不是用 Java 编写的。

首先获取生成器:

JsonArrayBuilder builder = Json.createArrayBuilder();

然后在循环中迭代和添加对象:

for(...) {
  builder.add(/*values*/);
}

最后得到 JsonArray:

JsonArray arr = builder.build();

关于java - 如何使用循环(动态地)将 JsonObjects 添加到 javax.json.JsonArray,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23871265/

相关文章:

arrays - 多个 Json 文件或具有多个数组的单个文件

ios - Swift: Codable - 提取单个编码 key

java - 呈现复杂的组织结构图,类似于 javascript/flash/java 图形库

php - 为什么 MYSQL 中的空格会破坏 PHP 创建的 JSON?

json - 如何从 http.Get 获取 JSON 响应

javascript - 解析多级 JSON 时遇到问题

java - 将元素添加到 HashMap 中的 HashSet

java - 使用saaj在soap header 中添加 session id

java - 处理未知数量的聚合操作

java - JPQL 和连接表