臥槽!Dozer 宣佈停止維護,不要再用了。。

最近棧長分享了兩篇 MapStruct 玩法:

旨在優雅的代替滿屏的 get/set 以及 BeanUtils 工具類,然後棧長也收到了一些留言,其中很多朋友就是推薦使用 Dozer 的:

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


不過當我打開 Dozer Github 時:

納尼?什麼鬼?

棧長簡單翻譯下:

Dozer 項目當前不再維護了,並且將來很大可能被棄用,然後新用戶不建議使用了,老用戶也推薦大家遷移到 MapStruct 和 ModelMapper 等類庫上面去。

棧長看了歷史修改記錄,是 2021/04/07 這天提交的不再維護的記錄,事情已經過去大半年了,整個項目也已經大半年沒有更新了。。

既然 Dozer 已經不再維護,並且即將被棄用了,我也就沒有體驗的必要了,當然也不推薦大家使用了,免得入坑!


如果大家項目中有用到 Dozer 的,也建議考慮遷移到別的 Bean 映射工具,比如:MapStruct、Orika、ModelMapper、JMapper 等等,至於它們的性能如何,棧長找到了一篇國外的評測報告:

https://www.baeldung.com/java-performance-mapping-frameworks

實測結果:

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 性能最差,當然這個評測數據僅供參考,不同的版本、環境可能還會有不同的表現。

我們再來看下 Google 搜索趨勢:

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

上圖調整到了中國,數據很少,顯然中國地區使用 Google 搜索的相對不多,但也能看到 MapStruct 確實是使用最多的,另外就是 Dozer、ModelMapper 了。

所以,用哪個大家心中應該有個數了,個人建議儘量用主流的、用多比較多的,比如 MapStruct,畢竟它是最主流的,大家感興趣的話可以關注公衆號:Java技術棧,棧長會陸續分享更多實用教程。

至於那些堅持寫滿屏的 get/ set 和 BeanUtils 的也沒有毛病,只要代碼運行不出錯,怎麼寫都沒有問題的。不管用什麼,實際工作中也不是個人能選擇的,需要遵守整體技術團隊的規範。


話說你們公司用的哪個呢?歡迎投票分享!

所以,你還在用 Dozer 嗎?趕緊發給身邊的同事看看吧,及時遷移到別的主流類庫上,不然時間久了可能給系統帶來隱患。

好了,今天的分享就到這裏了,後面棧長會分享更多好玩的 Java 技術和最新的技術資訊,關注公衆號Java技術棧第一時間推送,我也將主流 Java 面試題和參考答案都整理好了,在公衆號後臺回覆關鍵字 "面試" 進行刷題。

最後,覺得我的文章對你用收穫的話,動動小手,給個在看、轉發,原創不易,棧長需要你的鼓勵。

版權聲明: 本文系公衆號 "Java技術棧" 原創,原創實屬不易,轉載、引用本文內容請註明出處,抄襲者一律舉報+投訴,並保留追究其法律責任的權利。

近期熱文推薦:

1.1,000+ 道 Java面試題及答案整理(2021最新版)

2.別在再滿屏的 if/ else 了,試試策略模式,真香!!

3.臥槽!Java 中的 xx ≠ null 是什麼新語法?

4.Spring Boot 2.5 重磅發佈,黑暗模式太炸了!

5.《Java開發手冊(嵩山版)》最新發布,速速下載!

覺得不錯,別忘了隨手點贊+轉發哦!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章