[英]How to add JsonObjects to javax.json.JsonArray Using Loop (dynamically)
要将对象添加到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();
您需要在每次迭代结束时完成构建JsonObjectBuilder以使其工作
JsonArrayBuilder jarr = Json.createArrayBuilder();
for (int i = 0; i < posts[i]; i++)
{
jarr.add(Json.createObjectBuilder()
.add("post", posts[i])
.add("id", ids[i]).build());
}
jarr.build();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.