BeanUtils.copyProperties對兩個屬性大部分相同或完全相同的兩個類進行快速賦值


BeanUtils它提供了對java反射和自省API的包裝。在Java開發中我們用到比較多的copyProperties,對於這個方法來來說,需要注意幾點

copyProperties(a,b);a是有屬性值得一個類,b是一個要賦值的目標類

在使用BeanUtils.copyProperties(a, b)中要注意以下幾點

b中的存在的屬性,a中一定要有,a中可以有多余的屬性;
a中與b中相同的屬性都會被替換,不管是否有值;
a、 b中的屬性要名字和類型都相同,才能被賦值,不然的話需要手動賦值;
Spring的BeanUtils的CopyProperties方法需要對應的屬性有getter和setter方法;
如果存在屬性完全相同的內部類,但是不是同一個內部類,即分別屬於各自的內部類,則spring會認為屬性不同,不會copy;
spring和apache的copy屬性的方法源和目的參數的位置正好相反,所以導包和調用的時候都要注意一下。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM