Chinese (Simplified) Language Pack(IDEA官方中文插件)
IDEA下檢視位元組碼
在IDEA下內建javap -v
在tool setting 的Program輸入工具的路徑,這中間可以插入宏,比如
$JDK_PATH$
,不需要自己再手動輸入jdk的路徑了。
在參數欄中輸入
,
-v $FileClass$
$FileClass$
代表要解析的 class檔案。
在Workding Directory中輸入
代表項目的輸出路徑
$OutputPath$
idea也可以安裝jclasslib插件
位元組碼:
本地變量表:
1、AceJump
使您僅需敲擊幾次即可跳到編輯器中的任何符号。按鍵盤快捷鍵AceAction(預設為Ctrl+ ;)以激活AceJump。在編輯器中鍵入任何字元串,後跟所示的标簽之一,以跳轉其位置:
2、zookeeper
管理zookeeper的idea插件本代碼是根據https://github.com/linux-china/zookeeper-intellij修改過來的,解決了一些npe異常
可以圖形化的檢視zk 節點資訊了,非常簡單
3、Grep Console
由于Intellij idea不支援顯示ascii顔色,grep-console插件能很好的解決這個問題, 可以設定不同級别log的字型顔色和背景色., 勾上你想要的日志級别
4、Maven Helper
我一般用這款插件來檢視maven的依賴樹。
- 在不使用此插件的情況下,要想檢視maven的依賴樹就要使用Maven指令
來檢視依賴。maven dependency:tree
- 想要檢視是否有依賴沖突也可以使用
隻檢視關心的jar包mvn dependency:tree -Dverbose -Dincludes=<groupId>:<artifactId>
- 但是這樣還是需要我執行指令,并且當項目比較複雜的時候,這個過程是比較漫長的。maven helper就能很好的解決這個問題。
5、EasyCode
一個線上生成MyBatis增删改查的工具比逆向工程更厲害,可以生成和
Controller
,還有前端 ,提高開發效率
Service
詳細使用大家可以參考 官網文檔 ,國人寫的,文檔很全面 點我進官網
6、Iedis
大家都知道我們之前連接配接這個緩存中間件都是使用 +,今天來換個 Redis插件,更強大
RedisDesktopManager
是一個簡單易用的
Iedis
插件,他可以輕松管理上百萬個Key而不會阻塞伺服器。
Redis GUI
伺服器清單支援同時連接配接多台Redis伺服器,并可以輕松切換。
插件主界面如圖所示。
7、Mybatis sql plugin
mybatis代碼生成工具 ,實作全自動化 生成,可視化界面更友善
8、MyBatis Log Plugin
神級
根據執行sql 替換掉 ? 顯示完整 sql, 直接複制粘貼到資料庫 就可以執行
9、 MyBatisCodeHelperPro
超級牛逼神級
支援mapper互跳,方法自動生成,代碼自動生成
隻輸入了一個fin 的各種提示就處理了,當你選擇一個回車的時候 mapper.xml 也就給你生成了。
還可以根據資料庫表自動生成xml、mapper service 和個增删改查代碼,可一建生成所有表 真的超級牛逼啊
##/10、BackgroundImagePlus
可以把女朋友照片當作 背景,每次打開IDEA ,一看到他,你就不會感到疲勞了 嘻嘻!
操作步驟
11、Lombok
Lombok能以簡單的注解形式來簡化java代碼,提高開發人員的開發效率。
隻需加上注解 什麼get set 什麼toString 等等方法都不需要寫
例如開發中經常需要寫的javabean,都需要花時間去添加相應的
getter/setter
,
也許還要去寫構造器、
equals
等方法,而且需要維護,當屬性多時會出現大量的getter/setter方法,這些顯得很冗長也沒有太多技術含量,一旦修改屬性,就容易出現忘記修改對應方法的失誤。Lombok能通過注解的方式,在編譯時自動為屬性生成構造器、getter/setter、equals、hashcode、toString方法。
注解說明 詳解
-
@Data:
- 會為類的所有屬性自動生成setter/getter、equals、canEqual、hashCode、toString方法,如為final屬性,則不會為該屬性生成setter方法。
-
@Getter/@Setter
- 如果覺得@Data太過殘暴(因為@Data集合了@ToString、@EqualsAndHashCode、
、@Getter/@Setter
的所有特性)不夠精細,可以使用@Getter/@Setter注解,此注解在屬性上,可以為相應的屬性自動生成Getter/Setter方法,示例如下:@RequiredArgsConstructor
-
@NonNull :
- 該注解用在屬性或構造器上,Lombok會生成一個非空的聲明,可用于校驗參數,能幫助避免空指針。
-
@Cleanup
- 該注解能幫助我們自動調用close()方法,很大的簡化了代碼
-
@NoArgsConstructor, @RequiredArgsConstructor and @AllArgsConstructor
-
無參構造器、部分參數構造器、全參構造器。Lombok沒法實作多種參數構造器的重載。
詳細大家可以參考官網
12、activate-power-mode
根據Atom的插件activate-power-mode的效果移植到IDEA上,打字有 動畫特效
13、Jrebel
熱加載插件,也是超級牛逼,就是收費。
JRebel是一種生産力工具,允許開發人員立即重新加載代碼更改。它跳過了Java開發中常見的重建,重新啟動和重新部署周期。JRebel使開發人員可以在相同的時間内完成更多工作,并在編碼時保持順暢。JRebel支援大多數現實世界的企業Java堆棧,并且易于安裝到現有的開發環境中。
最後别忘了把JRebel設定為offline模式 點一下work offline
14、RestfulToolkit
作為一個程式員,不管是、
前端
、還是
後端
測試
,都要經常面對接口。
後端開發接口,前端對接接口,測試測試接口。
目前,我們最常用的接口測試工具,基本是Postman。今天我們換一種
使用步驟
一套 RESTful 服務開發輔助工具集。
- oo根據 URL 直接跳轉到對應的方法定義 ( Ctrl \ or Ctrl Alt N );
- 提供了一個 Services tree 的顯示視窗;
- 一個簡單的 http 請求工具;
- 在請求方法上添加了有用功能: 複制生成 URL;,複制方法參數…
- 其他功能:
- java 類上添加 Convert to JSON 功能,格式化 json 資料 ( Windows: Ctrl + Enter;Mac: Command + Enter )。
- 支援 Spring 體系 (Spring MVC / Spring Boot 1.x,2.x)
- 支援 JAX-RS
- 支援 Java 和 Kotlin 語言。
15、JUnitGenerator V2.0
有一個好的編寫單元測試習慣的開發者,代碼品質肯定是很好的,可以随時校驗自己開發和改寫接口的快速檢查工具。也避免了測試提的bug多而影響個人績效(有些公司把bug計入考核範圍内)。拜拜甜甜圈,哦不對,是拜拜bug
16、Alibaba Java Coding Guidelines
阿裡巴巴代碼規範檢查插件,代碼規範檢查用的
阿裡出品的《Java 開發手冊》時下已經成為了很多公司新員工入職必讀的手冊,前一段阿裡釋出了《Java 開發手冊(泰山版)》, 又一次對Java開發規範做了完善。不過,又臭又長的手冊背下來是不可能的,但內建到IDEA開發工具中就友善很多。
舉個栗子:開發手冊上不允許用Executors去建立線程池,而是通過ThreadPoolExecutor的方式。
內建插件後會再去使用Executors去建立線程池會有如下的提示。
17、Alibaba Cloud Toolkit
快速部署到伺服器,超級牛逼 超級推薦
18、VisualVM Launcher
一般可用于在本地開發進行壓力測試,性能測試之類的監控器,其他場景一般不推薦使用此模式啟動,還會啟動另外一個Visual vm視窗,這個視窗是JDK bin目錄下的JvisualVM
19、String Manipulation
字元串工具
20、Key promoter
個人最喜歡的一個 ,一個提示快捷鍵,當你做重複操作時,就會提示你,是否将目前操作變成快捷鍵
21、CodeGlance
快速定位代碼。右側小地圖。 這個 主要是 代碼過多友善定位
22、Gsonformat
可根據json資料快速生成java實體類
GsonFormat 個人覺得是一個非常非常實用的插件,它可以将JSON字元串自動轉換成Java實體類。特别是在和其他系統對接時,往往以JSON格式傳輸資料,而我們需要用Java實體接收資料入庫或者包裝轉發,如果字段太多一個一個編寫那就太麻煩了。
23、Json Parser
json串格式化工具,不用打開浏覽器了
厭倦了打開浏覽器來格式化和驗證JSON?為什麼不安裝JSON Parser并在具有脫機支援的IDE内進行呢?JSON Parser是用于驗證和格式化JSON字元串的輕量級插件。安裝并傳播:)
24、Material Theme UI
顔值大佬 工具的顔值也很重要,好的主題讓人賞心悅目,有碼代碼的欲望,就像美女帥哥一樣
25、Translation
在平時的開發中,有時候對于變量的命名是否很頭疼,這款插件可以幫助你翻譯單詞,對于英語差的同學真是福音 使用很簡單: 選中單詞或者段落ctrl+shift+y翻譯,ctrl+shift+s切換翻譯源
26、stackoverflow
這東西 就吊了 ,可以随時翻譯 我們遇到的錯誤
27、Vue
Vue.js 是現在的主流技術 ,那肯定讓Vue的文法變得更加友好,必須要安裝 我們來看看安裝前後 效果差別
未安裝時 :
安裝後 :
28、GenerateAllSetter
我們setXxxx()的時候就非常痛苦了,花費大量的時間去做一些苦力活,顯示不是我們想要的。
使用GenerateAllSetter就能解決這個問題,它就能做到一鍵生成一個對象的所有的set方法。
圖中可以看到通過GenerateAllSetter插件一鍵生成了User類的setXxx方法,簡化了我們平時大量手工碼字的工作。
其實我們敲Alt+Enter鍵時,會看到有三個選項,視訊中選的是填充預設值,另外兩個看需求選擇
29、Codota
用了Codota 後不再怕對API不會用,舉個栗子:當我們用stream().filter()對List操作,可是對filter()用法不熟,按常理我們會百度一下,而用Codota 會提示很多filter()用法,節省不少查閱資料的時間。
當然,它還有網頁版
30、jclasslib bytecode viewer
很多人想學習Java反彙編後的位元組碼,但是一方面缺乏好的資料,另外一方面缺乏好的工具。 但今天你來看看這款工具
jclasslib bytecode viewer 是一個可以可視化已編譯Java類檔案和所包含的位元組碼的工具。 另外,它還提供一個庫,可以讓開發人員讀寫Java類檔案和位元組碼。
使用方法
- 在 IDEA 打開想研究的類。
- 編譯該類或者直接編譯整個項目( 如果想研究的類在 jar 包中,此步可略過)。
- c打開“view” 菜單,選擇“Show Bytecode With jclasslib” 選項。
- 選擇上述菜單項後 IDEA 中會彈出 jclasslib 工具視窗。
31、Auto filling Java call arguments
開發中,我們通常會調用其他已經編寫好的函數,調用後需要填充參數,但是絕大多數情況下,傳入的變量名稱和該函數的參數名一緻,當參數較多時,手動單個填充參數非常浪費時間。
該插件就可以幫你解決這個問題。
安裝完該插件以後,調用一個函數,使用 Alt+Enter 組合鍵,調出 “Auto fill call parameters” 自動使用該函數定義的參數名填充。
32、GenerateO2O
需要定義一個函數,參數是待轉換的類,傳回值是要轉換到的類型,然後使用generateO2O,即可自動幫你get set屬性。
可以定義一個專門的轉換類,比如ScheduleConverter 将轉換代碼放到這裡,一方面友善複用,一方面避免轉換類占據大量邏輯類的空間。當然可以使用 MapStruct
此外強烈推薦不要用類轉換工具,修改屬性不容易感覺,容易出Bug!!
33、PlantUML
最近項目使用IntelliJ IDEA來做背景的開發IDE工具,需要利用UML來做些設計。就給大家推薦這個
34、Stack trace to UML
很多時候我們報錯的時候,并不知道調用的鍊路到底搜尋哪裡出問題了,是以這個時候,我們就需要,用到這個工具了,它可以 将錯誤堆棧資訊轉成Uml形式
35、Rainbow Brackets
由于很多人沒有養成好的編碼風格,沒有随手 format 代碼的習慣,甚至有些同僚會寫代碼超過幾百行,閱讀起來将非常痛苦。
痛苦的原因之一就是找到上下文,由于括号太多,不确定目前代碼行是否屬于某個代碼塊,此時這個插件就會幫上大忙。 下面就出現了彩虹括号
37、FindBugs
程式員總是想盡可能地避免寫 BUG, FindBugs 作為靜态代碼檢查插件,可以檢查你代碼中的隐患,并給出原因。 分析完之後就會出現結果面闆
點選對應的item在右邊會定位到具體的代碼
38、AllFormat
一個可以格式化JSON、XML、HTML、以及MAP的toString()列印的字元串的插件,All Format,另外還可以直接生成MD5,友善開發人員調式自己的代碼 ,在沒有 它之前,我們可能 搜尋 啥 線上 json 、線上 XML 類似
網上線上Json格式化
JSON
- https://www.sojson.com/
- https://tool.oschina.net/codeformat/json/
- https://www.json.cn/
XML
- http://web.chacuo.net/formatxml
- https://www.bejson.com/otherformat/xmlsort/
- http://tools.jb51.net/code/xmlcodeformat
有了它之後 ,按住Alt+F
或 點選
這個圖示
就會彈出 這個 ,下面 是格式化之前的效果
當我們點選 按鈕,格式化之後
39、IDEA Mind Map
思維導圖對于我們需求分析和知識庫關系梳理十分重要。有了這個插件以後 IDEA 也可以畫思維導圖了。而且功能還十分強大,貼圖啥的應有盡有。
- 打開IDE,file–settings–plugins,搜尋IDEA Mind Map
- 點選install,進行下載下傳,然後按照提示restart重新開機IDEA,安裝完成
- 建立mind map思維導圖–在項目任意目錄下,點選右鍵,new–選擇Empty Mind Map,即可建立自己的項目思維導圖
示例:
40、Git Commit Template
入職的時候, 如果老是有人吐槽你送出的 Git 不規範?你可以試試這個插件。它提供了很好的 Git 格式化模版,你可以按照實際情況格式化你的送出資訊。
Git Commit message
規範采用的是Angular 規範
Angular規範中定義的格式有3個内容:
Header
- type(必需) : Type of change:commit的類别;
- scope(可選):Scope of this change:此次commit的影響子產品;
- subject(必需):Short description:簡短的描述此次代碼變更的主要内容
Body
- 對本次 commit 的較長的描述
Footer
- 日常項目中開發,Footer不常用,可為空
Header
- type : type用于說明commit的類别,常用的辨別如下:
- feat:新功能
- fix:修補bug
- docs:文檔
- style: 格式(不影響代碼運作的變動,空格,格式化,等等)
- refactor:重構(即不是新增功能,也不是修改bug的代碼變動)
- perf: 性能 (提高代碼性能的改變)
- test:增加測試或者修改測試
- build: 影響建構系統或外部依賴項的更改(maven,gradle,npm 等等)
- ci: 對CI配置檔案和腳本的更改
- chore:對非 src 和 test 目錄的修改
- revert: Revert a commit
scope
- scope用于說明 commit 影響的範圍,比如資料層、控制層、視圖層等等,視項目不同而不同。
subject
- Body 部分是對本次 commit 的較長的描述,可以分成多行。
例如:
- 修改菜單查詢接口
- 增加菜單删除接口
日常項目開發中,如果Header中subject已經描述清楚此次代碼變更的内容後,Body部分就可以為空。
Footer
(1)不相容變動
(2)關閉 Issue
日常項目中開發,Footer不常用,可為空。
撤銷:
若需要撤銷上一次的commit,header部分為:revert: 上一次commit的header内容;
body部分為:This reverts commit xxx,xxx是上一次commit對應的SHA 辨別符。
送出的時候點選下圖按鈕,即可出現模闆:
選擇Type,填寫相應内容,最後點選送出即可:
如果想手敲, git 不熟悉的朋友,直接看下面圖吧,畢竟我也記不住 哈哈~ :
41、CamelCase
命名風格轉換插件,可以在 kebab-case,SNAKE_CASE,PascalCase,camelCase,snake_case 和 空格風格之間切換。快捷鍵蘋果為 ⇧+⌥+ U ,windows 下為 Shift + Alt +U。
42、Extra Icons
這個東西可有可無,美化插件,為一些檔案類型提供官方沒有的圖示。
當然你也可以自定義圖示,這樣對你來說,程式設計時,便看到的就是自己的圖示,開發起來也會有成就感
來看看效果吧。