java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > 关于BeabUtils.copyproperties用法

Java关于BeabUtils.copyproperties的用法

作者:程序员阿伟

这篇文章主要介绍了Java关于BeabUtils.copyproperties的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

关于BeabUtils.copyproperties用法

BeanUtils它提供了对java反射和自省API的包装。

它里面还有很多工具类,这里我们介绍一下copyProperties。

使用BeanUtils.copyProperties方法进行对象之间属性的赋值,避免通过get、set方法一个一个属性的赋值,减少了代码工作量。

用法

BeanUtils.copyProperties("被赋值的对象", "被复制的对象");

注意

例子:BeanUtils.copyProperties(a, b)

Spring中的BeanUtils.copyProperties方法是深拷贝还是浅拷贝

理解什么是浅拷贝 , 什么是深拷贝 ?

BeanUtils.copyProperties方法是深拷贝还是浅拷贝?

public class User {
    private int id;
    private String username;// 用户姓名
    //get set方法此处省略
}
public class Person {
    private Object user;
    //get set方法此处省略
    }
@Test
public void CopyTest(){
        //创建对象
        User user=new User();
        user.setId(1);
        user.setUsername("对象1");
        Person oldPerson = new Person();
        oldPerson.setUser(user);

        Person newPerson = new Person();

        BeanUtils.copyProperties(oldPerson,newPerson);
        System.out.println(newPerson.getUser().toString());
        //输出地址
        System.out.println("oldPerson = " + oldPerson.getUser());
        System.out.println("newPerson = " + newPerson.getUser());
    }

打印结果 :

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文