Fork me on GitHub

实体类Date字段@JsonFormat序列化与反序列化

jackson注解

输出为时间字符串(人类可读)

@JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSZ", timezone = "GMT+8")
private Date createTime;

输出数据: "createTime": "2025-07-25T14:30:45.123+0800"

输出为时间戳(机器友好)

@JsonFormat(shape = JsonFormat.Shape.NUMBER)
private Date createTime;

输出数据:"createTime": 1721879445123

pom

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-annotations</artifactId>
    <version>2.x.x</version>
</dependency>

<!--或者通过 Spring Boot 自带的 Jackson-->
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
</dependency>

框架使用情况

🧱 SSM / SpringMVC 项目

•默认 Jackson 处理 JSON
推荐:
•页面展示:使用字符串格式
•前端接收:使用时间戳格式

🚀 Spring Boot 项目

•可全局配置:

spring:
  jackson:
    date-format: yyyy-MM-dd'T'HH:mm:ss.SSSZ
    time-zone: GMT+8

•或使用注解单独控制字段

posted @ 2025-07-25 12:01  秋夜雨巷  阅读(28)  评论(0)    收藏  举报