Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从列表生成json<;对象>;_Java_Json - Fatal编程技术网

Java 从列表生成json<;对象>;

Java 从列表生成json<;对象>;,java,json,Java,Json,嗨,我想从我的数组列表中生成json对象。 样本表: id user_id name group_id 1 1 user1 1 2 2 user2 1 3 3 user3 2 4 4 user4 3 5 5 user5 2 那么我得到这张唱片的方

嗨,我想从我的数组列表中生成json对象。 样本表:

id      user_id     name        group_id
1       1           user1       1
2       2           user2       1
3       3           user3       2
4       4           user4       3
5       5           user5       2
那么我得到这张唱片的方式是:

List<User> userList = dao.getUsers();
for(User user:userList){

        JSONObject userJson = new JSONObject();
        userJson.put("user_id", user.getId());
        userJson.put("name", user.getName());
        userArr.put(userJson);

        results.put("group_id", user.getGroup_id());
        results.put("users", userArr);
        resultArr.put(results);
}
我的目标是获取所有记录并将其输出为下面类似json的示例

{
            results:[
            {
                "group_id":1,
                "users":[
                    {"user_id": 1, "name":"user1" },
                    {"user_id": 2, "name":"user2" }
                ]
            },
            {
                "group_id":2,
                "users":[
                    {"user_id": 3, "name":"user3" },
                    {"user_id": 5, "name":"user5" }
                ]
            },
            {
                "group_id":3,
                "users":[
                    {"user_id": 4, "name":"user4"}
                ]
            }
            ]
        }
更新: 需要按组id对其进行分组


谢谢

您可以轻松地使用Gson:

import com.google.gson.Gson;
...
List<User> userList = dao.getUsers();
System.out.println(new Gson().toJson(userList));
import com.google.gson.gson;
...
List userList=dao.getUsers();
System.out.println(新的Gson().toJson(userList));

您尝试过的内容可能重复?
import com.google.gson.Gson;
...
List<User> userList = dao.getUsers();
System.out.println(new Gson().toJson(userList));