一:添加依赖:
<!--@JsonFormat所需依赖 -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<jackson.version>2.11.3</jackson.version>
</dependency>
import org.springframework.format.annotation.DateTimeFormat;//springBoot自带的
import com.fasterxml.jackson.annotation.JsonFormat;
@ApiModelProperty(value = "审核时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
private Date auditDateTime;
@ApiModelProperty(value = "签署时间")[添加链接描述](https://www.cnblogs.com/cangqinglang/p/10083661.html)
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
private Date signingDateTime;
二、 @DateTimeFormat
(将表单格式的日期转换成Date类型)
注意
此方式只针对于请求参数的格式非json格式的,如果是json的则不会生效,需要使@JsonFormat
对于标准格式会自动转换(标准格式yyyy-MM-dd HH:mm:ss)
三、@JsonFormat(timezone = “GMT+8”, pattern = “yyyy-MM-dd HH:mm:ss”)
(用于请求体为json格式的请求)
说明
:将json中字符串类型的日期转换成Date类型
{
"auditDateTime": "2021-09-12 19:17:50",
"signingDateTime": "2021-09-12 19:17:50"
}
注意:
1、此方式只针对于请求参数的格式为json格式的,其他请求体类型则无效
2、需要设置时区为GMT+8,如果不设置,可能会出现时间不准确问题,
GMT 就是格林威治标准时间的英文缩写(Greenwich Mean Time 格林尼治标准时间),
是世界标准时间.gmt-8 是格林威治时间+8小时,是北京时间.
3、如果将此对象返回为json格式的,则注解也会生效
两者区别
@DateTimeFormat
用于请求体非json格式的请求
@JsonFormat
用于请求体为json格式的请求
将包含此注解的对象返回给前端时,也会沿用此注解的格式 (返回类型为json格式时)