最近项目中有个一个类的属性想复制到另一个类的属性里,两个类的属性名称和类型都一致,想到了用 BeanUtils.copyProperties() 这个方法进行拷贝,在使用的过程中出现了一个问题:拷贝完之后,需要属性赋值的对象属性为空,一直想不明白这是为啥, 后来仔细阅读源码发现了一个极其容易被忽视的内容:就是 导包,导包,导包。
BeanUtils.copyProperties(a, b),一个是Spring的,一个是Apache的。
这个是org.springframework.beans下的,这个是将source的值复制给target,即BeanUtils.copyProperties(a, b)是将a复制到b。
这个是org.apache.commons.beanutils下的,这个是将orig的值复制给dest,即BeanUtils.copyProperties(a, b)是将b复制到a。
No destination(目标) bean specified(指定) :未指定目标bean
No origin(源头) bean specified : 未指定源bean
还是需要看文档或者源码呀!