使用Spring提供的BeanUtils.copyProperties()方法报错:Could not copy property 'xxx' from source to tar


使用Spring提供的BeanUtils.copyProperties()方法报错:Could not copy property 'xxx' from source to target; nested exception is java.lang.IllegalArgumentException


调用的方法:org.springframework.beans.BeanUtils.copyProperties(Object source, Object target)

报错:
org.springframework.beans.FatalBeanException: Could not copy property 'adgroupId' from source to target; nested exception is java.lang.IllegalArgumentException
at org.springframework.beans.BeanUtils.copyProperties(BeanUtils.java:615)
at org.springframework.beans.BeanUtils.copyProperties(BeanUtils.java:528)
...

分析:
在使用Spring提供的BeanUtils.copyProperties(Object source, Object target)方法时,如果target中的属性含有基本类型,而source中对应的属性值为null,
则copy时,就相当于给一个基本类型赋值null,故报错。

解决方法:
javaBean的属性类型使用包装类型,不要使用基本类型。

上一篇:BeanUtils.copyProperties(source,target)


下一篇:Bean复制的几种框架性能比较(Apache BeanUtils、PropertyUtils,Spring BeanUtils,Cglib BeanCopier)