服务治理 Java学习笔记

java不同类型对象间拷贝

2017-01-20  本文已影响67人  刘阳0292

项目中VO、PO等等实体中,很多字段都是相同的,而我们为了业务需要经常要将一个实体中的数据拷贝到另一个实体中,BeanUtils提供的copyProperties()方法为我们提供了方便的值拷贝功能,让我们远离了代码中一坨一坨的set、get代码。

BeanUtils.copyProperties()

PropertyUtils.copyProperties() (与上方法类似,但会转化同名不同类型变量)

特点:
1、 通过反射将一个对象的值赋值给另外一个对象(前提是对象中属性的名字相同)。
2、 BeanUtils.copyProperties(obj1,obj2); 经常闹混不知道是谁给谁赋值,无意中先到"后付前"这个词来帮助自己记忆这个功能。即将######obj2的值赋值给obj1。
3、 如果2中实例obj2为空对象,即值new了他的实例并没有赋值的话obj1对应的属性值也会被设置为空置。
4、BeanUtils与PropertyUtils对比(这里对比copyProperties方法):PropertyUtils的copyProperties()方法几乎与BeanUtils.copyProperties()相同,主要的区别在于后者提供类型转换功能,即发现两个JavaBean的同名属性为不同类型时,在支持的数据类型范围内进行转换,BeanUtils 不支持这个功能,但是BeanUtils速度会更快一些。

了解更多:

我所理解的BeanUtils.copyProperties() 用法

java不同类型对象之间的拷贝

上一篇下一篇

猜你喜欢

热点阅读