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的更多相关文章

  1. fastJson将json字符串转换为map

    public class JsonUtil { /** * 将json转化成map * @param jsonStr * @return */ public static Map<String, ...

  2. java分享第十三天(fastjson生成和解析json数据,序列化和反序列化数据)

     fastjson简介:Fastjson是一个Java语言编写的高性能功能完善的JSON库.fastjson采用独创的算法,将parse的速度提升到极致,超过所有json库,包括曾经号称最快的jack ...

  3. fastjson生成和解析json数据,序列化和反序列化数据

    本文讲解2点: 1. fastjson生成和解析json数据 (举例:4种常用类型:JavaBean,List<JavaBean>,List<String>,List<M ...

  4. fastjson生成和解析json数据

    本文讲解2点: 1. fastjson生成和解析json数据 (举例:4种常用类型:JavaBean,List<JavaBean>,List<String>,List<M ...

  5. json小结和fastjson包的实际json操作

    工作中,需要处理与另一方系统数据交换的问题,采用的是调用远程接口的方法,数据格式选择的是json,今天就来聊一聊json,主要分析json数据和java Bean之间的转换问题. 一.json是什么 ...

  6. Json字符串转map集合

    第一步:在pom.xml中添加依赖; <dependency> <groupId>com.alibaba</groupId> <artifactId>f ...

  7. JSON字符串转换为Map

    本文是利用阿里巴巴封装的FastJSON来转换json字符串的.例子如下: package com.zkn.newlearn.json; import com.alibaba.fastjson.JSO ...

  8. 黑马学习ajax&json 笔记

    ## 今日内容 1. AJAX: 2. JSON # AJAX: 1. 概念: ASynchronous JavaScript And XML 异步的JavaScript 和 XML 1. 异步和同步 ...

  9. 记一次FastJSON和Jackson解析json时遇到的中括号问题

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/jadyer/article/details/24395015 完整版见https://jadyer. ...

随机推荐

  1. springboot +Thymeleaf+UEditor整合记录

    1,ueditor官网下载:https://ueditor.baidu.com/website/download.html  下载相应的工具包和源码,ps:源码放到工程中 2,解压放到放到项目中,sp ...

  2. linux配置词典goldendict

    在mint 18下使用通过, ubuntu 类似. 方法: 通过软件中心安装goldendict,或者 sudo apt install goldendict 通过网页抓取程序, 见附录 下载朗道词典 ...

  3. 吴裕雄--天生自然ShellX学习笔记:Shell echo命令

    Shell 的 echo 指令与 PHP 的 echo 指令类似,都是用于字符串的输出.命令格式: echo string 您可以使用echo实现更复杂的输出格式控制. 1.显示普通字符串: echo ...

  4. 吴裕雄--天生自然TensorFlow2教程:Tensor数据类型

    list: [1,1.2,'hello'] ,存储图片占用内存非常大 np.array,存成一个静态数组,但是numpy在深度学习之前就出现了,所以不适合深度学习 tf.Tensor,为了弥补nump ...

  5. git 推送到github最常用命令

    初始化仓库,上传到github中. git init git add README.md git commit -m "first commit" git remote add o ...

  6. Graph & Tree2

    续https://www.cnblogs.com/tyqtyq/p/9769817.html 0x65 负环 SPFA 当一个节点入队次数到达N的时候,就说明有负环 或者记录最短路包含的路径条数 还有 ...

  7. Python笔记_第三篇_面向对象_2.构造函数和析构函数(含self说明)

    1. 构造函数: 为什么要有构造函数? 打一个比方:类的创建就是好比你创建了好了一种格式的房间,你租给上一个住户的后,里面会对方很多“垃圾”和不规则的物品摆放.构造函数就是下一个住户再使用的时候进行物 ...

  8. ASP.NET core MVC动作过滤器执行顺序

    using Microsoft.AspNetCore.Mvc.Filters; using System; using System.Threading.Tasks; namespace dotnet ...

  9. debian8.8安装sougou输入法

    传送门:http://www.cnblogs.com/ligongzi/p/6137601.html 亲测可用

  10. 893B. Beautiful Divisors#美丽的因子(打表法)

    题目出处:http://codeforces.com/problemset/problem/893/B 题目大意:找到一个数在二进制下,最大的以k个连续的1和k-1个连续的0组成的数字作为因子 #in ...