当前位置: 代码迷 >> 综合 >> jackson使用@JsonFormat注解处理日期时间类型序列化
  详细解决方案

jackson使用@JsonFormat注解处理日期时间类型序列化

热度:38   发布时间:2024-02-25 02:20:54.0

1.简介

 

默认情况下,jackson在序列化Date类型时,会将其转换为毫秒时间戳,有时需要Date序列化为指定格式的时间字符串

jackson提供了以下注解:

  • JsonFormat:指定了Date序列化时使用的日期时间格式

 

2.实体

 

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;import java.util.Date;@Data
public class User {private Integer id;private Date date;@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")private Date date1;@JsonFormat(with = JsonFormat.Feature.WRITE_DATE_TIMESTAMPS_AS_NANOSECONDS)private Date date2;}
  • pattern:指定了日期时间格式化字符串
  • with:指定了启用的jackson特性

 

3.测试

 

        ObjectMapper mapper = new ObjectMapper();User user = new User();user.setId(1);user.setDate(new Date());user.setDate1(new Date());