Java-java对象集合转json格式

Java-java对象集合转json格式

晚风撩人 发布于 2017-10-17 字数 424 浏览 1132 回复 2

我有三个集合
ArrayList<Student> list = new ArrayList<Student>();
ArrayList<Classes> list1 = new ArrayList<Classes>();
ArrayList<Teacher> list2 = new ArrayList<Teacher>();
分别对应三个实体,人数据库里取出了数据,现在要把这三个集合组成一个json
{student:{id:1,name:11},classes:{id:2,name:2},teacher:{id:3,name:3}}
请问有什么办法可以做到这样子的json格式。

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

浮生未歇 2017-10-24 2 楼

List list = new ArrayList();
JSONObject obj = new JSONObject();
obj.put("text", "Absolute");
obj.put("id", "absolute");
list.add(obj);
JSONArray jsonList = JSONArray.fromObject(list);
格式差不多就这样的,你可以借鉴一下。

瑾兮 2017-10-21 1 楼

有2中方法,一种是用现有的json工具类直接转换,二就是自己组装成json。

第一种推荐用fastjson等,那fastjson来说,
List<Object> list = new ArrayList<Object>;//定义一个list列表
list.add(new Arraylist<Student>);//添加学生列表
list.add(new Arraylist<Classes>);//添加课程列表
list.add(new Arraylist<Teacher>);//添加老师列表
上面就是组装成了对象形式,最后调用fastjson的JSON.toJsonString(list);
这样得到的就是json格式的字符串,里面具体实现不用你考虑。

第二种自己来组装json。
组装json使用格式的,类似键值对是map型,而[]这样的就是list型
先定义最外面的json
JsonObject json = new JsonObject();
JSONArray students = new JSONArray();//学生类json数组
JsonObject student= new JsonObject();//一个学生类json
students.put(student);//将学生类添加进学生类json数组
....同理得到课程json数组和老师json数组

最后,添加到大的json里面
json.put(students );
json.put(classes);
json.put(teachers );

json就是最终的结果了