序列化与反序列化_spring boot json自定义序列化和反序列化配置

spring boot可以自定义json序列化,比如我们经常遇到的日期的json序列化和反序列化,spring中默认的是显示时间戳,如下所示:我们可以通过自定义的方式来格式化日期格式。

26dc59992cd5b3820ab2d7e8b53ad81f.png

如下所示:使用@JsonComponent表示是一个json的component会自动扫描为bean,通过JsonSerializer和JsonDeserializer来定义序列化和反序列化的规则,如下所示定义的是一个日期的json规则,此方式可以定义任何对象的序列化规则。

180bdb5ccc586eba806063b518c0a19c.png

此种方式的优点是,任何对象都可以定义序列化和反序列化规则,缺点是无法个性化服务,比如某一实体里面日期是yyyy-MM-dd,另一实体是yyyy-MM-dd HH:mm:ss。

如果是单纯的日期格式问题,又想使用个性化定义,可以在实体里面使用@JsonFormat(pattern="yyyy-MM-dd")如下:

db30863bc7178685f1953c770d681bcb.png

还有一种格式化日期的方法就是修改objectMapper的bean,如下所示:也可以定义日期的格式,此种方式代码少,相对简洁。

3bc7d8672a4130f58dee4ed228c35fac.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值