在java中将字符串列表/集转换为json对象

时间:2017-09-23 23:06:25

标签: java json jackson

我有一个名为Order的类,其中包含一个

下面的字符串列表
Set<String> items;

当我将其转换为JSON时:

ObjectMapper mapperObj = new ObjectMapper();
String JSON = mapperObj.writeValueAsString(order);
System.out.println(JSON);

...我得到如下的输出

"items":[  
         "xyz",
         "aaa"
        ]

我正在寻找类似下面的内容

"items":[  
         {  
            "result":"xyz"
         },
         {  
            "result":"aaa"
         }
        ]

我不想为单个字符串单独创建一个类。

1 个答案:

答案 0 :(得分:0)

您可以使用某些API(如Jackson)创建JSON对象并将其打印到字符串中。首先为您的ArrayNode创建一个json items。然后,对于items中的每个字符串,创建一个ObjectNode,就像这样,

ObjectNode node = mapper.createObjectNode();
node.put("result", "xyz");

并将其添加到ArrayNode。最后,打印出JSON对象。