0

我有一个方法应该返回一个Response带有JsonObject(带有arraylist)的a,就像本文底部的代码一样。这是一个java@GET方法。我知道如何建立一个类似jsonobjectjson.createObjectBuilder

 JsonObject jo = Json.createObjectBuilder().add("name", "item").add("user", user.getUser()).build();

但我不知道如何像下面的代码那样构建。所以我必须添加一个名为“items”的添加,这是一个数组列表。每个项目都有四个属性:id、name、bool 和另一个arraylist reserveItems(reserveItems 可以为空)。在此之后,我必须添加名称长度和值 687。

{
              "items" :[
                           {
                              "id"         : 1,
                              "name"       : "Item1",
                              "bool"       : true,
                              "reserveItems": []
                           },
                           {
                              "id"         : 2,
                              "name"       : "Item2",
                              "bool"       : false,
                              "reserveItem": []
                           }
              ],
              "length"  :687
    }
4

1 回答 1

1

JsonObjectBuilder 接口,您可以通过以下方式获取您的 JsonObject:

                JsonObject value = Json.createObjectBuilder()
                .add("items", Json.createArrayBuilder()
                        .add(Json.createObjectBuilder()
                                .add("id", 1)
                                .add("name", "Item1")
                                .add("bool", true)
                                .add("reserveItems", Json.createArrayBuilder())
                        )
                        .add(Json.createObjectBuilder()
                                .add("id", 2)
                                .add("name", "Item2")
                                .add("bool", false)
                                .add("reserveItems", Json.createArrayBuilder())
                        )
                )
               .add("length", 687)
               .build();

               System.out.println(value);
于 2017-10-18T20:59:48.917 回答