Spring Boot
使用 @DateTimeFormat
可以对非 Json (即未被 @RequestBody
修饰的)参数进行反序列化,该注解由 Spring Boot 提供,与序列化工具无关。
而需要处理 Json 参数时,则必须借助 Json 序列化框架来实现。
Jackson
Jackson 提供了 @JsonFormat
注解,同时用于日期的(反)序列化。但是默认情况下,并不支持 Jsr310 新增的、即 java 8 时间类,如 LocalDate。
需要添加依赖(默认继承 Jackson 提供的版本号即可):
1 | <dependency> |
此时,Spring Boot 将自动完成注册。
但是,若在项目中手动新建了 Jackson 处理器,或者重新注册了 ObjectMapper Bean,则需要在注册时,修改配置以添加支持:
1 | // 通常时在 web 配置中重新消息响应器 |