Spring jackson原理及基本使用方法详解
作者:Y_wee 发布时间:2021-10-03 08:28:18
标签:Spring,jackson
导入maven依赖
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.11.2</version>
</dependency>
1、java对象转json
@Test
public void test01() throws JsonProcessingException {
//创建User对象
User user=new User("admin","1111");
//将user转为json格式
ObjectMapper objectMapper=new ObjectMapper();
String userString=objectMapper.writeValueAsString(user);
System.out.println(userString);
}
2、writeValue(参数1,obj)方法介绍
参数1
File:将obj对象转换为json字符串,并保存到指定的文件中
writer:将obj对象转换为json字符串,并将json数据填充到字符输出流中
Outputstream:将obj对象转换为json字符串,并将json数据填充到字节输出流中
3、注解介绍
@JsonIgnore:排除属性,即当前注解属性不转化json
@JsonFormat:属性值的格式化
常用在日期属性上,eg:@sonFormat(pattern = "yyyy-MM-dd")
4、json转java对象
@Test
public void test02() throws JsonProcessingException {
//创建json对象
String json="{\"username\":\"admin\",\"password\":\"1111\"}";
//将json对象转为java对象
ObjectMapper objectMapper=new ObjectMapper();
User user=objectMapper.readValue(json,User.class);
System.out.println(user);
}
5、集合转json
@Test
public void test03() throws JsonProcessingException {
//创建User对象
User user=new User("admin","1111");
//存储User对象
List<User> userList=new ArrayList<User>();
userList.add(user);
userList.add(user);
userList.add(user);
//集合转json
ObjectMapper objectMapper=new ObjectMapper();
String listJson=objectMapper.writeValueAsString(userList);
System.out.println(listJson);
}
注:map集合的转换和list是一样的
来源:https://www.cnblogs.com/Y-wee/p/13716234.html


猜你喜欢
- 前言反射和注解在java中偏高级用法,一般在各种框架中被广泛应用,文章简单介绍下反射和注解的用法,希望对你的工作学习有一定帮助java注解什
- 本文实例为大家分享了java实现斗地主发牌的具体代码,供大家参考,具体内容如下参考斗地主的游戏规则,完成一个发牌的功能(54张牌,考虑点数,
- 本文会先介绍通用 Mapper 的简单原理,然后使用最简单的代码来实现这个过程。基本原理通用 Mapper 提供了一些通用的方法,这些通用方
- 准备工作这里就不说了,包括签约和申请APPID,附上微信开放平台APP开发步骤,不懂的同学可以参考这里:https://pay.weixin
- 这里介绍通过委托取消Button事件switch-case的方法。需要注意的是,事先要按顺序在各个Button的Tag属性中设置0、1、2、
- 本文为大家分享了maven环境变量配置的具体方法,供大家参考,具体内容如下一、maven环境配置1.解压apache-maven
- 条件(也称为条件队列 或条件变量)为线程提供了一个含义,以便在某个状态条件现在可能为 true 的另一个线程通知它之前,一直挂起该线程(即让
- 一、流程和任务的关系以下是一个简单的请假流程图,其中有一个开始事件,两个用户任务,一个结束事件。启动流程后,activiti会自动创建第一个
- 前提准备:1. 项目中至少需要引入的jar包,注意版本: a) core-renderer.jar&nb
- 本文实例讲述了Java基于正则实现的日期校验功能。分享给大家供大家参考,具体如下:private void checkDate() thro
- 在进行需求开发的时候,我们总是避不开和用户的数据打交道,那提到获取用户的数据一定会想到的东西就是申请权限<uses-permissio
- Android的主线程中执行长时间操作,导致界面无响应,会引起ANR。如果需要执行较长时间的操作,一般会在另一个线程处理,然后将数据转交给主
- 本文实例讲述了Android开发实现读取Assets下文件及文件写入存储卡的方法。分享给大家供大家参考,具体如下:调用一个反编译的.so文件
- 理解圆弧绘制GDI+中对于圆弧的绘制,是以给定的长方形(System.Drawing.Rectangle 结构)为边界绘制的椭圆的
- 起源flutter作为一个跨平台的框架,在绘制上体现出了它跨平台的良好性能.那么,它是如何从runApp()后 绘制上屏的呢?本文将与你一起
- 今天一起学习下如何在Spring中进行异步编程。我们都知道,web服务器处理请求 request 的线程是从线程池中获取的,这也不难解释,因
- 如题,主要使用AsReadOnly这个方法就可以了List<int> a = new List<int> {1, 2
- 介绍 在开发过程中,我们有时候会遇到非接口调用而出发程序执行任务的一些场景,比如我们使用quartz定时框架通过配置文件来启动定时任务时,
- 将JavaDoc 注释 生成API文档1. 打开java代码,编写JavaDoc 注释,只有按照java的规范编写注释,才能很好的生成API
- <?xml version="1.0" encoding="utf-8"?> <L