BeanUtils.copyProperties() 方法是 Apache Commons BeanUtils 庫中的一個方法,用于將一個 JavaBean 的屬性值復制到另一個 JavaBean 中。
使用方法如下:
import org.apache.commons.beanutils.BeanUtils;
SourceBean source = new SourceBean();
TargetBean target = new TargetBean();
BeanUtils.copyProperties(target, source);
此時,源對象 source
的屬性值將會復制到目標對象 target
中。
注意事項:
目標對象 target
必須已經實例化,否則會拋出 NullPointerException
異常。
如果源對象 source
和目標對象 target
中存在屬性名相同但類型不同的屬性,會拋出 IllegalAccessException
異常。
BeanUtils.copyProperties() 方法只會復制屬性的值,不會復制屬性的引用。
另外,還可以使用 BeanUtils.copyProperties() 方法的重載版本,可以指定需要復制的屬性列表。
String[] properties = {"property1", "property2", ...};
BeanUtils.copyProperties(target, source, properties);
上述代碼中的 properties
數組中的屬性名是需要復制的屬性列表,只會復制該列表中指定的屬性的值,其他屬性將會被忽略。