BeanUtils.copyProperties方法,当属性Date为null解决


问题描述:org.apache.commons.beanutils

user对象和formBean对象都有属性birthday,而且都是java.sql.Date类型的

当进行BeanUtils.copyProperties(user,formBean);复制属性时候,formBean中属性birthday为null,那么就会出现如下异常

解决方法

在BeanUtils.copyProperties(user,formBean);前加上一行代码:

BeanUtilsBean.getInstance().getConvertUtils().register(new SqlDateConverter(null),java.sql.Date.class);

也就是注册一个SqlDateConverter转换器,defaultValue=null,这样就可以接受null值,具体原因可以自己看源码理解

然后user中birthday属性值,往数据库表写数据(date型字段)时也不需要转换,因为是java.sql.Date

最后附上不错的文章: http://jen.iteye.com/blog/1032521 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM