項(xiàng)目中,經(jīng)常會(huì)遇到各層對(duì)象之間相互進(jìn)行值傳遞的過(guò)程,如在數(shù)據(jù)據(jù)持久層有一持久類(lèi)ClassA,在視圖層可能會(huì)變?yōu)閂iewA,通常情況下,如果兩個(gè)類(lèi)結(jié)構(gòu)一樣,最常使用的是BeanUtils.copyProperties(src,aim)方法將一個(gè)對(duì)象的值賦給另一個(gè)對(duì)象!但是如果屬性不同或者名稱(chēng)不同,則需要Dozer來(lái)完成,通過(guò)靈活的配置,達(dá)到不同對(duì)象間的拷貝!dozer當(dāng)字段名稱(chēng)相同時(shí),可以直接復(fù)制,不相同時(shí),可通過(guò)配置文件進(jìn)行復(fù)制
具體看一個(gè)比較復(fù)雜的例子:
兩個(gè)對(duì)象相互轉(zhuǎn)換,需要如下自定義convert
配置的xml文件如下:
spring中的配置如下:
結(jié)果如下:
100<------>100
password<------>password
jasson<------>jasson
100<------>100
female<------>1
Mon May 14 18:15:29 CST 2012<------>2012-05-14
NO<------>0
實(shí)現(xiàn)完全的復(fù)制功能。
聯(lián)系客服