<sup id="m40ya"></sup>
  • 
    
  • <kbd id="m40ya"></kbd>
    <samp id="m40ya"></samp>
    <ul id="m40ya"></ul>
  • 更多精彩內(nèi)容,歡迎關(guān)注:

    視頻號
    視頻號

    抖音
    抖音

    快手
    快手

    微博
    微博

    當(dāng)前位置:首頁 科技百科 dozer java

    dozer java

    文檔

    dozer java

    Dozer是一個(gè)對象轉(zhuǎn)換工具。Dozer可以在JavaBean到JavaBean之間進(jìn)行遞歸數(shù)據(jù)復(fù)制,并且這些JavaBean可以是不同的復(fù)雜的類型。
    推薦度:
    導(dǎo)讀Dozer是一個(gè)對象轉(zhuǎn)換工具。Dozer可以在JavaBean到JavaBean之間進(jìn)行遞歸數(shù)據(jù)復(fù)制,并且這些JavaBean可以是不同的復(fù)雜的類型。

    什么是dozer java,讓我們一起了解一下?

    Dozer 是一個(gè)對象轉(zhuǎn)換工具。Dozer可以在JavaBean到JavaBean之間進(jìn)行遞歸數(shù)據(jù)復(fù)制,并且這些JavaBean可以是不同的復(fù)雜的類型。所有的mapping,Dozer將會很直接的將名稱相同的fields進(jìn)行復(fù)制,如果field名不同,或者有特別的對應(yīng)要求,則可以在xml中進(jìn)行定義。

    為什么要使用Dozer?

    因?yàn)榉治龆鄬蛹軜?gòu)的J2EE系統(tǒng),經(jīng)常存在JavaBean直接的拷貝。比如我們在DAO層,通過Do取得業(yè)務(wù)層需要的數(shù)據(jù),將這些數(shù)據(jù)傳遞給Service層的VO。Do與VO就存在典型的值拷貝。

    典型的解決方案就是手動拷貝,代碼中充斥大量Set 和Get方法,真正的業(yè)務(wù)被埋藏值與值的拷貝之中。

    另一種方案就是使用BeanUtil,但BeanUtil不夠很好的靈活性,又時(shí)候還不得不手動拷貝。Dozer可以靈活的對對象進(jìn)行轉(zhuǎn)換,且使用簡單。

    那么如何讓Dozer自動完成User類到ApiUserDestination類的映射?

    1、創(chuàng)建兩個(gè) Java Bean 類:

    public?class?User?{
    ????private?String?name;
    ????private?Integer?age;
    ????private?Date?birthday;
    ????//?省略?setter?和?getter?方法
    }
    public?class?UserApiDestinationObject?{
    ????private?String?name;
    ????private?String?age;
    ????public?String?birthday;
    ??//?重寫?toString?方法,方便測試
    ????@Override
    ????public?String?toString()?{
    ????????return?"UserApiDestinationObject{"?+
    ????????????????"name='"?+?name?+?'\''?+
    ????????????????",?age='"?+?age?+?'\''?+
    ????????????????",?birthday='"?+?birthday?+?'\''?+
    ????????????????'}';
    ????}
    ????//?省略?getter、setter?方法
    }

    2、測試:

    @Test
    public?void?apiTest()?{
    ????Mapper?mapper?=?new?DozerBeanMapper();
    ????User?user?=?new?User();
    ????user.setName("sid10t.");
    ????user.setAge(3);
    ????user.setBirthday(new?Date());
    ????UserApiDestinationObject?destinationObject?=?mapper.map(user,?UserApiDestinationObject.class);
    ????
    ????System.out.println(destinationObject);
    }

    3、輸出:

    UserApiDestinationObject{name='sid10t.',?age='3',?birthday='Tue?Mar?08?10:56:02?CST?2022'}

    此時(shí),Dozer 自動完成 User 類到 ApiUserDestination 類的映射。這是 Dozer 的默認(rèn)映射方式——隱式映射,Dozer 自動的將兩個(gè)實(shí)體類的相同屬性名的屬性進(jìn)行映射。如果兩個(gè)屬性的屬性名相同,但是類型不同,Dozer 會按照默認(rèn)的轉(zhuǎn)換規(guī)則進(jìn)行類型的轉(zhuǎn)換,而且不同修飾符的屬性也能正常進(jìn)行映射。

    以上就是小編今天的分享了,希望可以幫助到大家。

    文檔

    dozer java

    Dozer是一個(gè)對象轉(zhuǎn)換工具。Dozer可以在JavaBean到JavaBean之間進(jìn)行遞歸數(shù)據(jù)復(fù)制,并且這些JavaBean可以是不同的復(fù)雜的類型。
    推薦度:
    為你推薦
    資訊專欄
    熱門視頻
    相關(guān)推薦
    eclipse創(chuàng)建java arrays java awesome java 小程序和app的區(qū)別 enum java excel讀取java extend java extends java false是java關(guān)鍵字嗎 愛奇藝黃金會員和星鉆會員的區(qū)別 field java foreach java for循環(huán)java gateway java gdal java gdb java geohash java geojson java glue java golang調(diào)用java double java 微信怎么群發(fā)消息給多人 django java continue java 被刪的微信聊天記錄怎么找回來 compareto java cmake java class轉(zhuǎn)java character java callable java qq實(shí)名認(rèn)證怎么解除 calendar java cache java c#調(diào)用java接口 c#調(diào)用java brew java boolean java bitset java axis java asterisk java
    Top 国产综合精品久久亚洲| 日本中文字幕在线精品| 热久久99精品这里有精品| 久久一区二区三区精品| 亚洲AV蜜桃永久无码精品| 国产精品一区二区久久精品涩爱| 中文国产成人精品久久亚洲精品AⅤ无码精品| 无码精品一区二区三区| 久久的精品99精品66| 亚洲欧洲久久久精品| 久久久国产精品无码一区二区三区 | 成人午夜精品网站在线观看| 午夜精品福利视频| 久久精品国产精品亚洲| 国产精品无码一区二区三区不卡| 亚洲精品高清久久| 国产亚洲午夜高清国产拍精品| 青青青国产精品手机在线观看| 亚洲福利一区二区精品秒拍| 热99re久久国超精品首页| 亚洲A∨精品一区二区三区| 国产精品一国产AV麻豆| 日韩精品一区二区三区色欲AV| 久久久精品国产Sm最大网站| 国产精品亚洲二区在线| 亚洲欧美国产精品专区久久| 3d动漫精品一区视频在线观看| 亚洲国产精品无码久久SM| 熟女少妇精品一区二区| 亚洲精品视频免费| 四虎永久在线精品免费观看地址| 亚洲国产成人精品无码区花野真一| 91精品久久国产青草| 日本内射精品一区二区视频| 精品一区二区三区免费| 国产在线91精品入口| 精品乱子伦一区二区三区高清免费播放 | 午夜精品久视频在线观看| 中文成人无码精品久久久不卡| 国产精品国产三级国产潘金莲| 四虎永久在线精品影院|