介紹五個非常實(shí)用的IDEA使用技巧
日常開發(fā)中,相信廣大 Java 開發(fā)者都使用過 IntelliJ IDEA 作為開發(fā)工具,IntelliJ IDEA 是一款優(yōu)秀的 Java 集成開發(fā)環(huán)境,它提供了許多強(qiáng)大的功能和快捷鍵,可以幫助開發(fā)者提高編碼效率和質(zhì)量。除了一些常見的技巧,如自動導(dǎo)包、智能補(bǔ)全、重構(gòu)工具等。IntelliJ IDEA 還有一些不為人知的技巧,可能很多開發(fā)者都沒有注意到或者使用過。本文就為你介紹博主常用的五個 IntelliJ IDEA 使用技巧,希望能夠給你帶來一些工作效率上的提升。本文內(nèi)容大綱如下:
- 注釋對齊
- 快速創(chuàng)建包目錄/文件夾
- 快付復(fù)制類代碼生成 Java 類
- 多實(shí)例啟動
- 分支比較
注意:本文的示例截圖以及操作演示都是基于 IntelliJ IDEA 2023.2 版本而來。過低版本可能不盡相同,大家注意。
一、注釋對齊
日常開發(fā)中,相信大家在添加注釋時都知道使用快捷鍵 ctrl + / ,不過大家可能會遇見下面這種情況:
public DiamondJumpContext(List<DiamondJumpType> diamondJumpTypes) {
//添加注釋
for (DiamondJumpType diamondJumpType : diamondJumpTypes) {
// map.put(diamondJumpType.getType(), diamondJumpType);
}
}
可以看到,使用快捷鍵 ctrl + / 添加注釋代碼或者注釋已有代碼時,默認(rèn)是在首行位置,無法與下方 for 循環(huán)代碼自動對齊,造成了視覺上的不美觀,那如何解決這個問題嘞?其實(shí)解決方法就藏在 IDEA 里,我來告訴大家如何設(shè)置。
打開 IDEA 設(shè)置 Editor -> Code Style -> Java -> Code Generation,找到下方的 Comment code 區(qū)域, 取消 Line comment at first column 的默認(rèn)勾選,將 Add a space at line comment start 以及 Enforce on reformat 打上勾就可以了。如下圖所示,
然后我們重新給上面的示例代碼打賞注釋時,效果就是下面這樣了:
public DiamondJumpContext(List<DiamondJumpType> diamondJumpTypes) {
// 添加注釋
for (DiamondJumpType diamondJumpType : diamondJumpTypes) {
// map.put(diamondJumpType.getType(), diamondJumpType);
}
}
大家可以很明顯的看到,此時添加的注釋默認(rèn)是跟當(dāng)前代碼對齊,并且自動留出一個空格,代碼的可閱讀性有了很大提升。
二、快速創(chuàng)建包目錄/文件夾
1.創(chuàng)建包目錄
日常開發(fā)時,當(dāng)大家想新建 Java 類時,考慮到項(xiàng)目的包目錄劃分可能需要新建一個包目錄,那么大家是如何操作的嘞?是先創(chuàng)建好包目錄后,在創(chuàng)建 Java 類嗎?其實(shí)在 IDEA 中創(chuàng)建 Java 類時,是可以直接順帶創(chuàng)建包目錄的,具體操作如下。
在創(chuàng)建 Java 類時,直接寫出包目錄名稱通過 . 拼接即可,如下圖新建 Java 類時填上 controller.TestController ,
效果如下:
可以看到,包目錄自動創(chuàng)建成功。
2.創(chuàng)建文件夾
快速創(chuàng)建文件夾的方式跟快速創(chuàng)建包目錄差不多,只不過將 . 拼接改為 / 即可,如下圖新建文件時填上 template/test.csv,
效果如下:
可以看到,文件夾自動創(chuàng)建成功。
三、快付復(fù)制類代碼生成 Java 類
日常中有個場景,博主經(jīng)常在上網(wǎng)瀏覽網(wǎng)上的技術(shù)資料,看到感興趣的文章時,想要復(fù)制文章中的 demo 代碼在本地跑一遍驗(yàn)證一下。于是就有了這個快付復(fù)制代碼生成 Java 類的需求。起初博主老老實(shí)實(shí)通過常規(guī)操作在本地手動創(chuàng)建 Java 類,然后拷貝 demo 代碼進(jìn)行驗(yàn)證。后來了解到其實(shí)在 IDEA 中是有快付復(fù)制類代碼生成 Java 類的功能,這里分享給大家。
假如當(dāng)前我們想要快速復(fù)制下方的 Java 類代碼到 IDEA 項(xiàng)目中,那改如何操作嘞?
/**
* 金剛位跳轉(zhuǎn)策略配置
*/
@Component
public class DiamondJumpContext {
private final Map<Integer, DiamondJumpType> map = new HashMap<>();
/**
* 由spring自動注入DiamondJumpType子類
*
* @param diamondJumpTypes 金剛位跳轉(zhuǎn)類型集合
*/
public DiamondJumpContext(List<DiamondJumpType> diamondJumpTypes) {
for (DiamondJumpType diamondJumpType : diamondJumpTypes) {
map.put(diamondJumpType.getType(), diamondJumpType);
}
}
public DiamondJumpType getInstance(Integer jumpType) {
return map.get(jumpType);
}
}
其實(shí)操作是很簡單的,我們可以通過全選復(fù)制上述 Java 類代碼,然后打開 IDEA,鼠標(biāo)選中指定的包目錄后通過 ctrl + v 粘連即可。
效果如下:
可以看到,我們已經(jīng)將 Java 類代碼快速復(fù)制到本地文件中。
四、多實(shí)例啟動
日常本地開發(fā)微服務(wù)項(xiàng)目時,博主想要驗(yàn)證一下網(wǎng)關(guān)的負(fù)載均衡以及感知服務(wù)上下線能力時,需要用到多實(shí)例啟動。
那么什么是多實(shí)例啟動嘞?簡單說就是能在本地同時啟動多個同一服務(wù)。打個比方項(xiàng)目中有一個 MobileApplication 服務(wù),我現(xiàn)在想要同時啟動兩個 MobileApplication 服務(wù),通過不同端口區(qū)分,該如何操作嘞?IDEA 中其實(shí)是支持這個操作的。我將給大家介紹如何啟用多實(shí)例功能。
打開服務(wù)配置,點(diǎn)擊 Modify options 選項(xiàng):
勾選打開 Operation System -> Alow multiple instance ,繼續(xù)勾選打開 Java -> Program arguments,然后在 Program arguments 輸入框中指定端口,在 Spring 項(xiàng)目中通過 --server.port=9999,如下圖(注意每次啟動實(shí)例時,這里的端口不能相同):
效果圖如下:
可以看到,這里多實(shí)例啟動的功能就 OK 了,在 Modify options 選項(xiàng)中還有許多常用功能,對于日常開發(fā)都是很多幫助的,比如 Java -> add VM options 可以用來添加 jvm 啟動參數(shù)等。
五、分支比較
日常開發(fā)中,當(dāng)項(xiàng)目上線時,博主經(jīng)常會使用這個功能,用于比較當(dāng)前新功能分支與 master 分支的代碼差異。
假如新功能分支上線前經(jīng)歷了多個人員參與迭代以及沖突修復(fù),作為項(xiàng)目主程的你需要在項(xiàng)目上線前進(jìn)行代碼 review,以確保代碼質(zhì)量,那該如何操作嘞?其實(shí) IDEA 已經(jīng)貼心的為我們做好了一切,這里我將給大家介紹遠(yuǎn)程分支比較功能。
右鍵項(xiàng)目根目錄,找到 Git -> Compare with Branch 選項(xiàng),點(diǎn)擊打開:
此時 IDEA 會顯示項(xiàng)目的所有分支列表,我們從中找到 master 分支,點(diǎn)擊即可:
最后 IDEA 會顯示所有的文件差異在項(xiàng)目左側(cè)欄目,我們點(diǎn)擊某個文件即可查看某個具體差異。
效果如下:
可以看到,通過 IDEA 提供的分支比較功能,為我們進(jìn)行代碼 review,提供了非常便利的操作。
總結(jié)
自此本文所講解的五個實(shí)用 IDEA 使用技巧就介紹完畢了,希望在日常工作中能夠幫助到大家,感謝閱讀。