本文主要是介绍SpringBoot使用Jackson 序列化小妙招,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
前言
SpringBoot默认使用Jackson进行json数据的序列化,在这个过程中总会有些奇奇怪怪的需求,对于这些小需求要么增加一堆配置类,要么重写方法,其实都有点杀鸡用牛到了,那么我来列举下日常开发中这些小需求如何通过配置的形式解决。
日期格式类
全局配置日期格式为 yyyy-MM-dd HH:mm:ss
spring:jackson:date-format: yyyy-MM-dd HH:mm:sstime-zone: GMT+8
以上只对Date类型的字段生效,如果是LocalDateTime类型,可以尝试以下局部配置
- 字段级别配置
public class MyClass {@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")private LocalDateTime time;
}
- 类级别配置
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
public class MyClass {private LocalDateTime time;
}
Long型字段序列化成字符串
Java的Long字段在Javascript中会精度丢失,所以序列化时要将该字段序列化成String
- 字段级别配置
public class MyClass {@JsonFormat(shape = JsonFormat.Shape.STRING)private Long lng;
}
- 类级别配置 (会将所有的字段都以字符串形式展示)
@JsonFormat(shape = JsonFormat.Shape.STRING)
public class MyClass {private Long lng;
}
这篇关于SpringBoot使用Jackson 序列化小妙招的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!