前端 传入Date 为空的解决办法

如果直接用 

@DateTimeFormat(pattern = "yyyy-MM-dd") Date date 接收的话,就会报400了,所以需要处理一下。
在controller中加如下方法即可
@InitBinder
    public void InitBinder(WebDataBinder dataBinder)
    {
        dataBinder.registerCustomEditor(Date.class, new PropertyEditorSupport() {
            @Override
            public void setAsText(String value) {
                try {
                    setValue(new SimpleDateFormat("yyyy-MM-dd").parse(value));
                } catch(ParseException e) {
                    setValue(null);
                }
            }

            @Override
            public String getAsText() {
                return new SimpleDateFormat("yyyy-MM-dd").format((Date) getValue());
            }        

                            });
    }

猜你喜欢

转载自www.cnblogs.com/super-hu/p/13169434.html