import org.springframework.beans.BeanUtils;
// 假设有两个实体类SourceClass和TargetClass,它们具有不同的属性
public class SourceClass {
private String name;
private int age;
// getters and setters
}
public class TargetClass {
private String fullName;
private int age;
// getters and setters
}
// 使用BeanUtils.copyProperties进行属性复制
public class BeanUtilExample {
public static void main(String[] args) {
SourceClass source = new SourceClass();
source.setName("John");
source.setAge(30);
TargetClass target = new TargetClass();
BeanUtils.copyProperties(source, target);
// 此时target的fullName为null,因为没有执行自定义属性复制
// 可以通过自定义编辑来处理特定的属性复制
target.setFullName(source.getName());
System.out.println(target.getFullName()); // 输出John
System.out.println(target.getAge()); // 输出30
}
}
这个例子展示了如何使用Spring框架提供的BeanUtils.copyProperties
方法来简化对象之间属性的复制。同时,演示了如何通过自定义逻辑来处理特定属性的复制,例如,这里将SourceClass
的name
属性复制到了TargetClass
的fullName
属性。