安利一個好用的IDEA插件 object-helper-plugin
更多精彩博文請關(guān)注:聽到微笑的博客
一. 插件背景
object-helper 插件是一個日常開發(fā)工具集插件,提供豐富的功能,最開始是基于 GenerateO2O 插件開發(fā)而來,它提供了對象之間值拷貝代碼自動生成的能力,就像這樣:

因為它很早之前就停止維護了,新版本IDEA無法使用該插件,所以自己參考它的交互模式,基于新版本API開發(fā)了初版 object-helper-plugin插件,再次感謝 GenerateO2O 的作者。
根據(jù)日常開發(fā)中的痛點,object-helper-plugin 插件不斷迭代,提供著我們的開發(fā)效率。
歡迎大家在 Issues 中提出寶貴意見,也可以聯(lián)系我成為一名插件開發(fā)者,共同完善插件的功能。
object-helper插件源碼:object-helper-plugin
二. 插件下載
方式一:
官網(wǎng)下載:ObjectHelper - IntelliJ IDEs Plugin | Marketplace (jetbrains.com)
方式二:
插件市場搜索 “ObjectHelper”

方式三:
Github下載最新安裝包,拖入IDEA即可:object-helper-plugin
二. 插件功能
2.1 對象復(fù)制代碼生成

有些場景下,我們需要快速寫一個對象值復(fù)制的方法,我們只需要寫一個空方法,就像這樣:
pulibc User dtoToModel(UserDTO userDTO){
}
在方法內(nèi)部使用 Alt+Insert 快捷鍵,點擊 Object Copy Method 就可以自動生成對象拷貝的代碼。
Alt+Insert 是IDEA默認快捷鍵,如果無效,可以在settings->keymap中搜索“Generate”關(guān)鍵字查看具體的快捷鍵:
2.2 Class類轉(zhuǎn)JSON字符串
有時候我們寫接口文檔時,或者和第三方對接接口格式時,如果我們已經(jīng)有了接口返回對象結(jié)構(gòu),就不需要Mock數(shù)據(jù),手動轉(zhuǎn)成JSON了,只需要鼠標(biāo)輕輕一點就可完成:

2.3 Class類轉(zhuǎn) Thrift IDL
有些公司的RPC框架可能是基于Thrift開發(fā)的,有些場景下我們定義好WEB接口后,還需要將類似的結(jié)構(gòu)轉(zhuǎn)成IDL語言再寫一遍,有了插件的幫助,小手點一下就能完成:

2.4 Class類轉(zhuǎn)XML字符串

三. 插件配置
因為插件功能比較雜,大家可以自定義開啟其中常用的功能:
File->settings->Tools->Object Helper 即可進入插件的配置頁面

四. 未來功能支持計劃及優(yōu)化
4.1 未來支持功能
- Class 轉(zhuǎn) Proto Buffer IDL
- All Setter
4.2 待優(yōu)化點
- Class轉(zhuǎn)XML多模式,以及循環(huán)依賴檢測
- Class轉(zhuǎn)JSON、Class轉(zhuǎn)XML功能支持數(shù)據(jù)類型默認值設(shè)定,以及根據(jù)字段名稱,智能動態(tài)生成默認值。
- 菜單分組展示


浙公網(wǎng)安備 33010602011771號