FastJson的学习之JSON互相转Map集合,List集合,JavaBean
https://blog.csdn.net/weixin_36910300/article/details/79182120
创建两个实体类 一个是部门类,一个是部门员工类
部门员工类
public class Person {
private Integer id;
private String name;
private Integer age;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
@Override
public String toString() {
return "Person{" +
"id=" + id +
", name='" + name + '\'' +
", age=" + age +
'}';
}
}
部门类
public class Dept {
private String deptName;
private List<Person> personList;
public String getDeptName() {
return deptName;
}
public void setDeptName(String deptName) {
this.deptName = deptName;
}
public List<Person> getPersonList() {
return personList;
}
public void setPersonList(List<Person> personList) {
this.personList = personList;
}
@Override
public String toString() {
return "Dept{" +
"deptName='" + deptName + '\'' +
", personList=" + personList +
'}';
}
}
对象转为json字符串格式
JSON.toJSONString(Object object)
@Test
public void fun1(){
List<Person> personArrayList = new ArrayList<Person>();
Person person = new Person();
person.setId();
person.setName("张三");
person.setAge();
System.out.println(JSON.toJSONString(person));
personArrayList.add(person);
Person person1 = new Person();
person1.setId();
person1.setName("李四");
person1.setAge();
personArrayList.add(person1);
System.out.println(JSON.toJSONString(person1));
Dept dept = new Dept();
dept.setDeptName("财务部");
dept.setPersonList(personArrayList);
String jsonString = JSON.toJSONString(personArrayList);
System.out.println(jsonString);
}
控制台的打印

JSON字符串转JavaBean
JSON.parseObject(String text,Class<T> clazz)
@Test
public void fun2(){
String str1="{\"age\":18,\"id\":1,\"name\":\"张三\"}";
System.out.println(JSON.parseObject(str1,Person.class));
String str2="{\"age\":18,\"id\":2,\"name\":\"李四\"}";
System.out.println(JSON.parseObject(str2,Person.class)); }
控制台打印

JSON字符串数组转List集合
JSON.parseArray(String text, Class<T> clazz)
@Test
public void fun3(){
String str="[{\"age\":18,\"id\":1,\"name\":\"张三\"},{\"age\":18,\"id\":2,\"name\":\"李四\"}]";
List<Person> PersonList=JSON.parseArray(str,Person.class);
System.out.println(PersonList);
}
控制台打印

Map集合转json
JSON.toJSONString(Object object)
@Test
public void fun4(){
Map<String,Person> personMap=new HashMap<String, Person>();
Person person = new Person();
person.setId();
person.setName("张三");
person.setAge();
personMap.put("zhangsan",person); Person person1 = new Person();
person1.setId();
person1.setName("李四");
person1.setAge();
personMap.put("lisi",person1); String json = JSON.toJSONString(personMap);
System.out.println(json);
}
控制台打印的信息

MapJson字符串转Map集合
(Map)JSON.parse(Object object)
@Test
public void fun5(){
String str="{\"lisi\":{\"age\":18,\"id\":2,\"name\":\"李四\"},\"zhangsan\":{\"age\":18,\"id\":1,\"name\":\"张三\"}}";
Map<String,Person> map = (Map)JSONObject.parse(str);
System.out.println(map.get("lisi"));
System.out.println(map.get("zhangsan"));
}
控制台的打印输出

FastJson的学习之JSON互相转Map集合,List集合,JavaBean的更多相关文章
- fastJson将json字符串转换为map
public class JsonUtil { /** * 将json转化成map * @param jsonStr * @return */ public static Map<String, ...
- java分享第十三天(fastjson生成和解析json数据,序列化和反序列化数据)
fastjson简介:Fastjson是一个Java语言编写的高性能功能完善的JSON库.fastjson采用独创的算法,将parse的速度提升到极致,超过所有json库,包括曾经号称最快的jack ...
- fastjson生成和解析json数据,序列化和反序列化数据
本文讲解2点: 1. fastjson生成和解析json数据 (举例:4种常用类型:JavaBean,List<JavaBean>,List<String>,List<M ...
- fastjson生成和解析json数据
本文讲解2点: 1. fastjson生成和解析json数据 (举例:4种常用类型:JavaBean,List<JavaBean>,List<String>,List<M ...
- json小结和fastjson包的实际json操作
工作中,需要处理与另一方系统数据交换的问题,采用的是调用远程接口的方法,数据格式选择的是json,今天就来聊一聊json,主要分析json数据和java Bean之间的转换问题. 一.json是什么 ...
- Json字符串转map集合
第一步:在pom.xml中添加依赖; <dependency> <groupId>com.alibaba</groupId> <artifactId>f ...
- JSON字符串转换为Map
本文是利用阿里巴巴封装的FastJSON来转换json字符串的.例子如下: package com.zkn.newlearn.json; import com.alibaba.fastjson.JSO ...
- 黑马学习ajax&json 笔记
## 今日内容 1. AJAX: 2. JSON # AJAX: 1. 概念: ASynchronous JavaScript And XML 异步的JavaScript 和 XML 1. 异步和同步 ...
- 记一次FastJSON和Jackson解析json时遇到的中括号问题
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/jadyer/article/details/24395015 完整版见https://jadyer. ...
随机推荐
- 用IMX6开发板创建Android模拟器
基于迅为IMX6开发板 在 AndroidStudio 中,单击“Tools”->“Android”->“AVD Manager”选项.弹出 如下对话框,点击红色方框中的按钮. 弹出如下所 ...
- javaweb学习——会话技术(二)
文中部分借鉴了:https://www.cnblogs.com/xdp-gacl/p/3855702.html https://blog.csdn.net/p744174529/article/det ...
- python中的变量对象小结2
# .变量名和数据内容是分开存储的. # .数据保存在内存中的一个位置(地址). # .变量中保存着数据在内存中的地址. # 引用就是变量中记录数据的地址. #不可变变量,重新赋值时会重新开辟一个地址 ...
- JetBrains Phpstorm 、 PyCharm 2019 最新破解码亲测可用
Phpstorm 2019 破解码最新亲测可用 6ZUMD7WWWU-eyJsaWNlbnNlSWQiOiI2WlVNRDdXV1dVIiwibGljZW5zZWVOYW1lIjoiSmV0cyBHc ...
- 计量经济与时间序列_ACF与PACF标准差(均标准误)的计算(含代码)
1 我们对于acf和pacf值计算完毕之后,在需要计算两个数值的标准差. 2 acf和pacf的标准差计算略有不同.acf的标准差是一个移动过程,而pacf是一个相对固定过程. 3 我们继 ...
- 吴裕雄--天生自然 PYTHON3开发学习:条件控制
if condition_1: statement_block_1 elif condition_2: statement_block_2 else: statement_block_3 var1 = ...
- 01 语言基础+高级:1-7 异常与多线程_day07 【线程池、Lambda表达式】
day07[线程池.Lambda表达式] 主要内容 等待与唤醒案例 线程池 Lambda表达式 教学目标 -[ ] 能够理解线程通信概念-[ ] 能够理解等待唤醒机制-[ ] 能够描述Java中线程池 ...
- 黑马eesy_15 Vue:04.综合案例(前端Vue实现)
黑马eesy_15 Vue:02.常用语法 黑马eesy_15 Vue:03.生命周期 黑马eesy_15 Vue:04.Vue案例(ssm环境搭建) 黑马eesy_15 Vue:04.综合案例(前端 ...
- top 命令中的VIRT,RES,SHR ,MEM区别
VIRT 表示进程的虚拟(地址)空间大小,其包含进程实际使用的大小(申请的堆栈), 使用mmap映射的大小,包括外设RAM, 还有映射到本进程的文件(例如动态库),还有进程间的共享内存.所以VIRT ...
- vue路由的跳转-路由传参-cookies插件-axios插件-跨域问题-element-ui插件
---恢复内容开始--- 项目初始化 创建一个纯净的vue环境项目,手动书写全局的样式配置,全局的main,js配置 (1)如果vue项目在重构或者出错的时候,手动安装node_modules. 如果 ...