fastjson

一:fastjson作用

1.将Java对象转换为json字符串====》响应给前端。

2.将json字符串转换为Java对象 ====》接受前端的json数据封装到对象中。


二:常用API

fastjson API 入口类是 com.alibaba.fastjson.JSON ,常用的序列化操作都可以在JSON类上的静态方法直接完成

1.在pom.xml下导入依赖

   <dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.47</version></dependency>

2.在test包下创建User实体类

public class User {private String username;private String password;public User(){}public User(String username, String password) {this.username = username;this.password = password;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}@Overridepublic String toString() {return "User{" +"username='" + username + '\'' +", password='" + password + '\'' +'}';}
}

 三:fastjson案例

1.将实体类转换为json字符串

 @Testpublic void tset1(){//创建User对象User user = new User();//添加数据user.setUsername("李知恩");user.setPassword("zhienaini");/*** 使用fastjson的核心类JSON调用方法*/String jsonString = JSON.toJSONString(user);System.out.println("jsonString = " + jsonString);//打印结果:/*** jsonString = {"password":"zhienaini","username":"李知恩"}*/}

运行结果如下 :

2 .将单列集合转换为json字符串

   //将单列集合转换为json字符串@Testpublic void test2(){//创建集合对象ArrayList<Object> list = new ArrayList<>();//添加数据Collections.addAll(list,new User("张三","123456"),new User("李四","1254360"),new User("王五","789456"));//使用fastjson的核心类JSON调用方法String s = JSON.toJSONString(list);System.out.println("s = " + s);//打印结果:/*** s = [*      {"password":"123456","username":"张三"},*      {"password":"1254360","username":"李四"},*      {"password":"789456","username":"王五"}*    ]*/}

3.将双列集合转换为json字符串

 //将双列集合转换为json字符串@Testpublic void test3(){//创建Map集合对象HashMap<Object, Object> hashMap = new HashMap<>();//添加数据hashMap.put("00001","库里");hashMap.put("00002",new User("哈登","1234"));//Map里面嵌套list集合List<Object> list1 = new ArrayList<>();Collections.addAll(list1,new User("库里1","159753"),new User("哈登1","156234"),new User("詹姆斯1","78456"));hashMap.put("00003",list1);//使用fastjson的核心类JSON调用方法String s = JSON.toJSONString(hashMap);System.out.println("s = " + s);//打印结果:/*** s = {"00002":{"password":"1234","username":"哈登"},* "00003":[{"password":"159753","username":"库里1"},{"password":"156234","username":"哈登1"},{"password":"78456","username":"詹姆斯1"}],* "00001":"库里"}*/}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/619071.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Leetcode每日一题】 分治 - 颜色分类(难度⭐⭐)(57)

1. 题目解析 题目链接&#xff1a;75. 颜色分类 这个问题的理解其实相当简单&#xff0c;只需看一下示例&#xff0c;基本就能明白其含义了。 2.算法原理 算法思路解析 本算法采用三指针法&#xff0c;将数组划分为三个区域&#xff0c;分别用于存放值为0、1和2的元素。通过…

C语言简单的数据结构:双向链表的实现

目录&#xff1a; 1.双向链表的结构和初始化1.1双向链表的结构1.2双向链表的初始化 2.双向链表的相关操作2.1双向链表的尾插、打印和头插2.11双向链表的尾插2.12双向链表的打印2.13双向链表的头插 2.2双向链表的尾删和头删2.21双向链表的尾删2.22双向链表的头删 2.3双向链表查找…

【信道编码】1 无线通信发展历程与挑战、信道分类、多径信道、单径信号传输与检测

【信道编码】1 无线通信发展历程与挑战、信道分类、多径信道、单径信号传输与检测 写在最前面无线通信发展历程一、电磁波的发现与利用&#xff08;19世纪末至20世纪初&#xff09;二、无线电技术的广泛应用&#xff08;20世纪初至20世纪中叶&#xff09;三、数字化与移动通信的…

OpenHarmony实战开发-异步并发概述 (Promise和async/await)。

Promise和async/await提供异步并发能力&#xff0c;是标准的JS异步语法。异步代码会被挂起并在之后继续执行&#xff0c;同一时间只有一段代码执行&#xff0c;适用于单次I/O任务的场景开发&#xff0c;例如一次网络请求、一次文件读写等操作。 异步语法是一种编程语言的特性&…

Tool:VRAM的简介、查询电脑VRAM的常用方法

Tool&#xff1a;VRAM的简介、查询电脑VRAM的常用方法 目录 VRAM的简介 查询电脑VRAM的常用方法 1、对于Windows系统 T1、设置-系统-显示查询法 T2、使用 DirectX 诊断工具&#xff1a; T3、使用系统信息工具&#xff1a; 2、对于Linux系统 T1、使用nvidia-smi命令&…

Python学习笔记19 - 类与对象

类的创建 对象的创建 类属性、类方法、静态方法 动态绑定属性和方法 面向对象的三大特征 封装&#xff1a;提高程序的安全性 继承&#xff1a;提高代码的复用性 多态&#xff1a;提高程序的可扩展性和可维护性 类的常用的特殊属性 类的常用的特殊方法 –add–() –len–() –…

Windows版PHP7.4.9解压直用(免安装-绿色-项目打包直接使用)

安装版和解压版 区别 安装版: 安装方便&#xff0c;下一步------下一步就OK了&#xff0c;但重装系统更换环境又要重新来一遍&#xff0c;会特别麻烦解压版&#xff08;推荐&#xff09;&#xff1a; 这种方式&#xff08;项目打包特别方便&#xff09;能更深了解mysql的配置&…

正确使用@RequestMapping(包含属性详解)

目录 一、基本认知二、RequestMapping的基本使用三、深入学习RequestMapping1、RequestMapping的源码2、RequestMapping的属性2.1 path2.2 method2.3 params2.4 headers2.5 consumes2.6 produces2.7 name 一、基本认知 客户端发起Http请求&#xff0c;会提供一个URL [协议://域…

做一个后台项目的架构

后台架构的11个维度 架构1&#xff1a;团队协助基础工具链的选型和培训架构2&#xff1a;搭建微服务开发基础设施架构3&#xff1a;选择合适的RPC框架架构4&#xff1a;选择和搭建高可用的注册中心架构5&#xff1a;选择和搭建高可用的配置中心架构6&#xff1a;选择和搭建高性…

Qt快速入门(MV架构之TableView + QStandardItemModel + 自定义代理小案例)

Qt快速入门&#xff08;MV架构之TableView QStandardItemModel 自定义代理小案例&#xff09; 关于MV架构的简单介绍 在Qt框架中&#xff0c;代理&#xff08;Delegate&#xff09;、模型&#xff08;Model&#xff09;和视图&#xff08;View&#xff09;之间的关系构成了…

Kafka 架构深入探索

目录 一、Kafka 工作流程及文件存储机制 二、数据可靠性保证 三 、数据一致性问题 3.1follower 故障 3.2leader 故障 四、ack 应答机制 五、部署FilebeatKafkaELK 5.1环境准备 5.2部署ELK 5.2.1部署 Elasticsearch 软件 5.2.1.1修改elasticsearch主配置文件 5.2…

OpenHarmony实战开发-FaultLoggerd组件。

简介 Faultloggerd部件是OpenHarmony中C/C运行时崩溃临时日志的生成及管理模块。面向基于 Rust 开发的部件&#xff0c;Faultloggerd 提供了Rust Panic故障日志生成能力。系统开发者可以在预设的路径下找到故障日志&#xff0c;定位相关问题。 架构 Native InnerKits 接口Sig…