臥槽!Dozer 宣布停止維護,不要再用了。。
點擊關(guān)注公眾號,Java干貨及時送達
最近棧長分享了兩篇 MapStruct 玩法:
旨在優(yōu)雅的代替滿屏的 get/set 以及 BeanUtils 工具類,然后棧長也收到了一些留言,其中很多朋友就是推薦使用 Dozer 的:





棧長并沒有用過 Dozer,朋友們一再推薦,一時搞得我非常好奇,這到底是何方神器,所以很想體驗一下這個神器。。
不過當我打開 Dozer Github 時:

納尼?什么鬼?
棧長簡單翻譯下:
Dozer 項目當前不再維護了,并且將來很大可能被棄用,然后新用戶不建議使用了,老用戶也推薦大家遷移到 MapStruct 和 ModelMapper 等類庫上面去。

棧長看了歷史修改記錄,是 2021/04/07 這天提交的不再維護的記錄,事情已經(jīng)過去大半年了,整個項目也已經(jīng)大半年沒有更新了。。
既然 Dozer 已經(jīng)不再維護,并且即將被棄用了,我也就沒有體驗的必要了,當然也不推薦大家使用了,免得入坑!
如果大家項目中有用到 Dozer 的,也建議考慮遷移到別的 Bean 映射工具,比如:MapStruct、Orika、ModelMapper、JMapper 等等,至于它們的性能如何,棧長找到了一篇國外的評測報告:
https://www.baeldung.com/java-performance-mapping-frameworks
實測結(jié)果:
| Framework Name | p0.90 | p0.999 | p1.0 |
|---|---|---|---|
| JMapper | 10-3 | 0.008 | 64 |
| MapStruct | 10-3 | 0.010 | 68 |
| Orika | 0.006 | 0.278 | 32 |
| ModelMapper | 0.083 | 2.398 | 97 |
| Dozer | 0.146 | 4.526 | 118 |
我們可以看到性能最好的顯然屬于 JMapper,MapStruct 緊隨其后,Dozer 性能最差,當然這個評測數(shù)據(jù)僅供參考,不同的版本、環(huán)境可能還會有不同的表現(xiàn)。
我們再來看下 Google 搜索趨勢:

可以看到,在全球過去的一年時間,MapStruct 獨占鰲頭,然后就是 ModelMapper 緊隨其后!

上圖調(diào)整到了中國,數(shù)據(jù)很少,顯然中國地區(qū)使用 Google 搜索的相對不多,但也能看到 ?MapStruct 確實是使用最多的,另外就是 Dozer、ModelMapper 了。
所以,用哪個大家心中應(yīng)該有個數(shù)了,個人建議盡量用主流的、用多比較多的,比如 MapStruct,畢竟它是最主流的,大家感興趣的話可以關(guān)注公眾號:Java技術(shù)棧,棧長會陸續(xù)分享更多實用教程。
至于那些堅持寫滿屏的 get/ set 和 BeanUtils 的也沒有毛病,只要代碼運行不出錯,怎么寫都沒有問題的。不管用什么,實際工作中也不是個人能選擇的,需要遵守整體技術(shù)團隊的規(guī)范。
話說你們公司用的哪個呢?歡迎投票分享!
所以,你還在用 Dozer 嗎?趕緊發(fā)給身邊的同事看看吧,及時遷移到別的主流類庫上,不然時間久了可能給系統(tǒng)帶來隱患。
好了,今天的分享就到這里了,后面棧長會分享更多好玩的 Java 技術(shù)和最新的技術(shù)資訊,關(guān)注公眾號Java技術(shù)棧第一時間推送,我也將主流 Java 面試題和參考答案都整理好了,在公眾號后臺回復(fù)關(guān)鍵字 "面試" 進行刷題。
最后,覺得我的文章對你用收獲的話,動動小手,給個在看、轉(zhuǎn)發(fā),原創(chuàng)不易,棧長需要你的鼓勵。
版權(quán)聲明: 本文系公眾號 "Java技術(shù)棧" 原創(chuàng),原創(chuàng)實屬不易,轉(zhuǎn)載、引用本文內(nèi)容請注明出處,抄襲者一律舉報+投訴,并保留追究其法律責任的權(quán)利。







關(guān)注Java技術(shù)棧看更多干貨


