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());