org.springframework.format.annotation.DateTimeFormat在springMVC框架中对日期string类型转化时,
会出现日期冬夏令时的问题,比如birthdate=1986-05-04转换成@DateTimeFormat(pattern = "yyyy-MM-dd")private Date birthdate;
会报非法异常调用方法在org.elasticsearch.common.joda.time.format.DateTimeParserBucket#computeMillis(boolean, java.lang.CharSequence);
造成请求400的错误,请求进入了服务器,但是服务器找不到对应的ModelAndView.
解决方案:
1.对请求的数据通过自定义String类型接收再处理
2.当前Controller里面添加方法,针对每次请求都会对日期Date的数据进行自定义数据绑定
@InitBinder protected void dateBinder(WebDataBinder binder) { SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); CustomDateEditor editor = new CustomDateEditor(dateFormat, true); binder.registerCustomEditor(Date.class, editor); }
参考https://blog.csdn.net/minggai008/article/details/70305955