如何在 JAVA 中将 List<JsonObject> 转换为 JsonArray

Posted

技术标签:

【中文标题】如何在 JAVA 中将 List<JsonObject> 转换为 JsonArray【英文标题】:How to convert List<JsonObject> to JsonArray in JAVA 【发布时间】:2020-11-30 18:44:48 【问题描述】:

我已经编写了一个代码,我需要从“选择 * 查询”创建一个 JSON 格式的输出。到目前为止,我能够获得这样的输出,但我必须将其包装在“用户”中


  "displayName": "Tony Stark",
  "givenName": "Tony",
  "surname": "Stark"
,

  "displayName": "James Martin",
  "givenName": "James",
  "surname": "Martin"

我需要这样的东西:


   "users": 
      [
            
                  "displayName": "Tony Stark",
                  "givenName": "Toney",
                  "surname": "Stark"
            ,
            
                  "displayName": "James Martin",
                  "givenName": "James",
                  "surname": "Martin"
            
      ]

请帮帮我。

【问题讨论】:

请用您正在查询数据库并转换为 json 的代码更新问题, 这能回答你的问题吗? How to create correct JSONArray in Java using JSONObject 【参考方案1】:

是的,如果您创建一个名为 Users 的模型类,将其与它的属性正确映射,这样它就可以完全按照您在屏幕截图中显示的方式显示。 附加参考模型类。

【讨论】:

列表 jObj = getJSONFormat(resultSet); 我有一个上面给出的列表,我也有一个结果集,它也是一个列表,如果你打印这个你会得到我现在得到的, 你能告诉我如何将这个列表包含在“用户”中【参考方案2】:

如果添加一个包装类并将其转换为json会很容易

import java.util.List;

public class UserWrap 
    private List<User> users;

    public UserWrap(List<User> users) 
        this.users = users;
    

【讨论】:

以上是关于如何在 JAVA 中将 List<JsonObject> 转换为 JsonArray的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Java 中将 list.toArray() 方法用于二维数组

如何在 Java Stream 中将 POJO 的列表转换为 Map<String,List>?

在 Java 中将 List<String> 转换为 String[]

如何在 Java 中将 Set 排序为列表?

在 Java 中将 JSON 转换为 List<List<String>>

在 Java 中将 List<Object> 转换为 String[]