これをテストするために、私はすぐに次のものを作りました:
public class Test {
public static void main(String[] args) {
try {
Employee e = new Employee();
e.setName("A");
Employee y = new Employee();
// y=e;
BeanUtils.copyProperties(y, e);
e.setName("B");
System.out.println(y.getName());
} catch (Exception e) {
e.printStackTrace();
}
}
}
class Employee{
String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
これは、印刷A
する代わりに印刷する必要がありますnull
。ここで何がうまくいかなかったのですか?プロパティをあるオブジェクトから別のオブジェクトに実際にコピーするにはどうすればよいでしょうか (そして、同じ値を指すようにしないでください)、BeanUtils.copyProperties は最初にディープ コピーを作成しますか?