码迷,mamicode.com
首页 > 编程语言 > 详细

spring mvc出现 Failed to convert property value of type 'java.lang.String' to required type 'java.util.Date' for property 'endtime'

时间:2016-06-07 12:34:55      阅读:634      评论:0      收藏:0      [点我收藏+]

标签:

在使用spring mvc中,绑定页面传递时间字符串数据给Date类型是出错:

Failed to convert property value of type [java.lang.String] to required type [java.util.Date] for property ‘expert.birthdate‘; nested exception is java.lang.IllegalArgumentException: Cannot convert value of type [java.lang.String] to required type [java.util.Date] for property ‘birthdate‘: no matching editors or conversion strategy found 

解决方法一:

1.使对应Controller控制器继承 extends SimpleFormController 
2.重写initBinder方法   

protected void initBinder(HttpServletRequest request, ServletRequestDataBinder binder){  
          SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd");  
           dateFormat.setLenient(false);  
           binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, false));          
    }  

注意SimpleDateFormat日期格式与页面日期格式要一致!

解决方法二:

Spring3.0以上的SimpleFormController 已经过时了,最新方式是使用@InitBinder注解的方式

在对应的Controller控制器中

    @InitBinder
    protected void init(HttpServletRequest request, ServletRequestDataBinder binder) {
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        dateFormat.setLenient(false);
        binder.registerCustomEditor(Date.class, new CustomDateEditor(dateFormat, false));
    }

 

spring mvc出现 Failed to convert property value of type 'java.lang.String' to required type 'java.util.Date' for property 'endtime'

标签:

原文地址:http://www.cnblogs.com/liaojie970/p/5566388.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!