常用的json与map互相转化,json与数组互相转化,json与list互相转化
2018-03-20 17:40
633 查看
用到是用的是阿里巴巴的Json包,叫Fastjson
下载jar地址是:https://github.com/alibaba/fastjson
参考文档链接:https://www.w3cschool.cn/fastjson/fastjson-quickstart.html
下面模拟数组转json,list转json
输出结果:
下面是模拟list转json,map转json
输出结果:
下载jar地址是:https://github.com/alibaba/fastjson
参考文档链接:https://www.w3cschool.cn/fastjson/fastjson-quickstart.html
下面模拟数组转json,list转json
package com.test3; import java.util.ArrayList; import java.util.List; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; class User { private String name; private int age; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } @Override public String toString() { return "User [name=" + name + ", age=" + age + "]"; } }; class UserGroup { private String name; //对象内置list private List<User> users = new ArrayList<User>(); public String getName() { return name; } public void setName(String name) { this.name = name; } public List<User> getUsers() { return users; } public void setUsers(List<User> users) { this.users = users; } @Override public String toString() { return "UserGroup [name=" + name + ", users=" + users + "]"; } } class FastJsonTest { public static void main(String[] args) { // 构建用户geust User guestUser = new User(); guestUser.setName("guest"); guestUser.setAge(28); // 构建用户root User rootUser = new User(); rootUser.setName("root"); guestUser.setAge(35); // 构建用户组对象 UserGroup group = new UserGroup(); group.setName("admin"); group.getUsers().add(guestUser); group.getUsers().add(rootUser); // 用户组对象转JSON串 String jsonString = JSON.toJSONString(group); System.out.println("jsonString:" + jsonString); // JSON串转用户组对象 (对象内置list) UserGroup group2 = JSON.parseObject(jsonString, UserGroup.class); System.out.println("group2:" + group2); // 构建用户对象数组 User[] users = new User[2]; users[0] = guestUser; users[1] = rootUser; // 用户对象数组转JSON串 String jsonString2 = JSON.toJSONString(users); System.out.println("jsonString2:" + jsonString2); //方法一: JSON串转用户对象list List<User> users2 = JSON.parseArray(jsonString2, User.class); System.out.println("users2:" + users2); //方法二:JSON串转数组,在通过数组编号获取到当个对象的值 JSONArray array = JSON.parseArray(jsonString2); System.out.println(((JSONObject)array.get(0)).getString("name")); System.out.println(((JSONObject)array.get(0)).getString("age")); } }
输出结果:
jsonString:{"name":"admin","users":[{"age":35,"name":"guest"},{"age":0,"name":"root"}]} group2:UserGroup [name=admin, users=[User [name=guest, age=35], User [name=root, age=0]]] jsonString2:[{"age":35,"name":"guest"},{"age":0,"name":"root"}] users2:[User [name=guest, age=35], User [name=root, age=0]] guest 35
下面是模拟list转json,map转json
package com.test3; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import com.alibaba.fastjson.JSON; class UserTest{ private String name; private String age; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getAge() { return age; } public void setAge(String age) { this.age = age; } @Override public String toString() { return "User [name=" + name + ", age=" + age + "]"; } } public class JsonTest { public static void main(String[] args) { /*******************map转json*************************************/ Map<String, Object> map = new HashMap<>(); map.put("name", "tom"); map.put("age", "23"); //map转json System.out.println(JSON.toJSON(map)); System.out.println(JSON.toJSONString(map)); /******************json转map****************************/ String json = "{\"name\":\"marry\",\"age\":\"24\"}"; Map<String, Object> dataMap = new HashMap<>(); //json转map dataMap = JSON.parseObject(json); System.out.println(dataMap.get("name")); System.out.println(dataMap.get("age")); /*********************list转json**********************************/ //制造json数据 List list = new ArrayList(); list.add(map); list.add(dataMap); //list转json System.out.println(JSON.toJSONString(list)); /*********************json转list**********************************/ //json转list List<UserTest> users=JSON.parseArray(JSON.toJSONString(list), UserTest.class); System.out.println(users.get(0).toString()); System.out.println(users.get(1).toString()); } }
输出结果:
{"name":"tom","age":"23"} {"name":"tom","age":"23"} marry 24 [{"name":"tom","age":"23"},{"name":"marry","age":"24"}] User [name=tom, age=23] User [name=marry, age=24]
相关文章推荐
- fastJSON把json转化成map,并转化成list,list如何装化为数组
- 利用Jackson对Object,Map,List,数组,枚举,日期类等转化为json
- java bean、List、数组、map和Json的相互转化
- 利用Jackson对Object,Map,List,数组,枚举,日期类等转化为json
- java bean、List、数组、map和Json的相互转化
- 本篇主要演示如何使用Jackson对List, Map和数组与JSON互相转换.
- 玩转Web之Json(四)---json与(Object/List/Map)的相互转化
- Java对集合的遍历 List ArryList HashMap LinkedMap JSON 数组等
- list和数组互相转化的的方法及需要注意的点!!!
- List,数组,map,set 相互转化
- Json:Javabean、list、map转化为json案例
- Java中List与数组互相转化
- 利用Gson将Json 转化为Map,javaBean, List转换为json
- java中String数组和List的互相转化
- [javase][json]fastJson在java后台转换json格式数据探究--处理数组/List/Map
- Json:json转化为List、Map案例
- 有趣Web之Json(四)---json与(Object/List/Map)相互转化
- fastJson在java后台转换json格式数据探究(二)--处理数组/List/Map
- json-lib方法demo,对象,map,list,json之间的转化
- java方式的将java对象以及list或者map转化为json数据,json转换为object或者map