@DateTimeFormat是Spring-context包下的注解,主要作用是将前端传过来的String类型转为Date类型
。
....
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date startTime;
@JsonFormat是jackson包下的注解,需要导入jackson依赖
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.8.8</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.8.8</version>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.13</version>
</dependency>
该注解的作用
- 前端传的String日期类型转为Date类型,(配合@RequestBody)
- 后端的Date类型,json格式化响应给前端时转为String类型。
它的能力范围比@DateTimeFormat要强大, @DateTimeFormat只能作用于前端给后端传值格式化。
需要注意的是,该注解还需额外指定时区
@JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private Date startTime;