项目中使用了Date,前端传递的格式为:yyyy-MM-dd
。而全局配置了时间格式为:yyyy-MM-dd HH:mm:ss
。导致接口请求报错。
修改过程中,查询到可以使用@DateTimeFormat
注解进行参数格式化。但经过测试,发现无效。
经查询,原因如下:@DateTimeFormat只会在类似@RequestParam的请求参数,也就是url传参时才会起作用。而body中以Json格式传递的参数,需要使用@JsonForma进行注解。
如果是Url传参,使用以下方式:
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date end;
如果是Body中,以Json传参,使用:
@JsonFormat(pattern = "yyyy-MM-dd")
private Date end;