BeanUtil.copyProperties用法
时间: 2023-07-25 16:46:29 浏览: 106
如何使用BeanUtils.copyProperties进行对象之间的属性赋值
5星 · 资源好评率100%
BeanUtil.copyProperties是一个常用的Java工具类,它提供了属性拷贝的功能,可以将一个对象的属性值复制到另一个对象中。使用该工具类可以简化JavaBean之间的属性拷贝操作,减少代码量。
使用BeanUtil.copyProperties方法需要引入commons-beanutils包,然后调用该类的static方法即可。示例代码如下:
```java
// 引入commons-beanutils包
import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.beanutils.BeanUtilsBean;
// 定义两个JavaBean
public class SourceBean {
private String name;
private int age;
// 省略getter/setter方法
}
public class TargetBean {
private String name;
private int age;
// 省略getter/setter方法
}
// 在代码中使用BeanUtil.copyProperties方法进行属性拷贝
SourceBean source = new SourceBean();
source.setName("Tom");
source.setAge(18);
TargetBean target = new TargetBean();
BeanUtilsBean.getInstance().getConvertUtils().register(false, false, 0);
BeanUtils.copyProperties(target, source);
System.out.println(target.getName()); // 输出:Tom
System.out.println(target.getAge()); // 输出:18
```
需要注意的是,使用BeanUtil.copyProperties方法进行属性拷贝时,需要确保两个JavaBean的属性名称和类型相同,否则会抛出异常。同时,该工具类也只能进行浅拷贝,对于复杂类型的属性(如List、Map等),需要手动进行处理。
阅读全文