當前位置: 妍妍網 > 碼農

12 款神級 IDEA 外掛程式,讓你少寫 80% 的程式碼!

2024-02-02碼農

大家好,我一航!

日常的業務功能開發,大部份情況下,核心程式碼差不多只占了計畫的20%,剩下的80% 基本就是一些體力活,配置項等;這80%的程式碼,卻消耗了我們大量的時間,而這部份程式碼,也不會對我們帶來大的提升,今天給大家推薦12款我個人常用的優質的外掛程式,旨在快速幫大家完成這80%體力程式碼,將更多的時間投入在核心功能的開發,告別加班,告別996!

1 Easy Code

一個能幫我們快速將表對映成 Spring 計畫中 Entity Controller Dervice Dao Mapper 等檔,快速實作基礎功能的外掛程式

外掛程式安裝

外掛程式中心搜尋 Easy Code 安裝 即可

外掛程式使用

第一步,添加一個資料來源,連線對應的資料庫

第二步

在資料來源中找到對應的表,右鍵選擇 Easy Code ,即可快速生成

2 Easy Javadoc

一鍵快速幫你生成內容、方法、類文件註釋的外掛程式,文件註釋輕松搞定

安裝

外掛程式中心搜尋 Easy Javadoc

外掛程式需要用到線上轉譯,以下是各個平台api key的申請入口,可以根據自己的喜歡,申請對應的key,個人使用的話,每月的免費額度基本都能滿足

  • 有道智雲轉譯申請地址:https://ai.youdao.com/

  • 百度轉譯申請地址:https://api.fanyi.baidu.com/doc/21

  • 騰訊轉譯申請地址:https://cloud.tencent.com/document/product/551/7372

  • 阿裏雲轉譯申請地址:https://www.aliyun.com/product/ai/alimt

  • 微軟轉譯申請地址:https://azure.microsoft.com/

  • 谷歌轉譯(需要魔法)申請地址:https://cloud.google.com/

  • 配置

    file -> settings -> other settings - EasyDoc 中找到配置界面,分別配置上 轉譯的api key (必須)、 自訂詞庫對映 (可選)、 樣版資訊 (可選)

    win 快捷鍵

    快捷鍵 作用域 說明
    ctrl \ 類、方法、內容(光標放上面就行,不要雙擊選中!) 生成當前文件註釋
    ctrl \ 選中的 中文 生成選中的中文的英文命名
    ctrl \ 選中的 非中文 彈框展示轉譯結果
    ctrl shift \ 生成全部文件註釋

    mac 快捷鍵

    快捷鍵 作用域 說明
    command \ 類、方法、內容(光標放上面就行,不要雙擊選中!) 生成當前文件註釋
    command \ 選中的 中文 生成選中的中文的英文命名
    command \ 選中的 非中文 彈框展示轉譯結果
    command shift \ 生成全部文件註釋

    其中 "dashabi" 就使用了自訂"小可愛"的對映

    問題說明

  • 不轉譯

    按了快捷鍵,只生成了如下的空註釋

    /**
    *
    **/

    就是轉譯配置未生效,可以到各個轉譯平台申請一下api key,配置上即可

  • 快捷鍵無效

    快捷鍵有可能被其他軟體給占用了,可以在 Settings -> Keymap -> Plug-ins -> Easy Javadoc 中找到並設定一個新的快捷鍵

  • 3 Bito

    一款非常實用的智慧化聊天機器人外掛程式,整合了GPT,可以為開發人員提供更快更準確的互動編程環境,不用魔法也能使用,能大大提升開發效率,之前也給大家推薦過,詳細的使用教程可參考:

    4 aiXcoder

    國內首款基於深度學習的智慧化軟體開發工具,利用AI技術實作程式碼⾃動⽣成、程式碼⾃動補全、程式碼智慧搜尋等功能,提升開發者開發效率與程式碼品質

    安裝

    使用

  • 開啟雲端服務

    這裏需要註冊帳號,登入,按著提示,一步步操作即可

  • 程式碼補全

  • 5 Lombok

    Lombok 是一款針對 Java 語言的編譯時外掛程式,用於透過註解自動化生成重復的程式碼,減少一些常規的 Java 程式碼書寫。

    依賴

    <dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.26</version>
    </dependency>

    外掛程式

    Lombok 不僅需要依賴,還需要安裝對應的外掛程式,在外掛程式中心搜尋 Lombok ,安裝重新開機即可

    使用

    在使用 Lombok 之前,一個物件的get、set、tostring,構造方法等等,寫起來還是非常麻煩的,一個簡單的物件,就需要寫下面這麽多程式碼:

    /**
     * @author 公眾號:一行Java
     * @title: UserInfo
     * @projectName ehang-spring-boot
     * @description: TODO
     * @date 2023/9/15 9:15
     */

    public classUserInfo{
    private String userName;
    private Integer age;
    publicUserInfo(){
    }
    publicUserInfo(String userName, Integer age){
    this.userName = userName;
    this.age = age;
    }
    public String getUserName(){
    return userName;
    }
    publicvoidsetUserName(String userName){
    this.userName = userName;
    }
    public Integer getAge(){
    return age;
    }
    publicvoidsetAge(Integer age){
    this.age = age;
    }
    @Override
    publicbooleanequals(Object o){
    if (this == o) returntrue;
    if (o == null || get class() != o.get class()) returnfalse;
    UserInfo userInfo = (UserInfo) o;
    returnnew EqualsBuilder()
    .append(userName, userInfo.userName)
    .append(age, userInfo.age)
    .isEquals();
    }
    @Override
    publicinthashCode(){
    returnnew HashCodeBuilder(1737)
    .append(userName)
    .append(age)
    .toHashCode();
    }
    @Override
    public String toString(){
    return"UserInfo{" +
    "userName='" + userName + '\'' +
    ", age=" + age +
    '}';
    }
    }












    但一旦引入 Lombok ,這個事情就變的非常簡單,三個註解就能實作上面的所有方法,程式碼也變得非常簡潔,清爽;

    import lombok.AllArgsConstructor;
    import lombok.Data;
    import lombok.NoArgsConstructor;
    /**
     * @author 公眾號:一行Java
     * @title: UserInfo
     * @projectName ehang-spring-boot
     * @description: TODO
     * @date 2023/9/15 9:15
     */

    @Data
    @AllArgsConstructor
    @NoArgsConstructor
    public classUserInfo{
    private String userName;
    private Integer age;
    }


    Lombok 支持的註解及說明

    1. @Getter / @Setter : 自動生成欄位的 getter 和 setter 方法。

    2. @ToString : 自動生成 toString 方法。預設情況下,生成包含所有欄位的 toString 方法。

    3. @EqualsAndHashcode : 自動生成 equals 和 hashCode 方法。預設情況下,生成包含所有非靜態、非transient 欄位的 equals 和 hashCode 方法。

    4. @NoArgsConstructor / @RequiredArgsConstructor / @AllArgsConstructor : 自動生成無參構造方法、必須參數構造方法、全參構造方法。

    5. @Data : 自動生成 getter、setter、equals、hashCode、toString 方法。

    6. @Builder : 自動生成建造者模式的程式碼,用於建立復雜物件。

    7. @Log : 自動生成日誌記錄變量,支持不同的日誌框架,例如 @Slf4j 用於整合 SLF4J。

    8. @NoArgsConstructor(force = true) / @AllArgsConstructor(force = true) : 自動生成無參構造方法、全參構造方法,並將欄位設定為 final。

    9. @Cleanup : 自動管理資源,主要用於清除需要手動釋放的資源,例如 IO 流。

    10. @SneakyThrows : 在方法體中自動捕捉並重新丟擲異常,無需顯式地進行例外處理。

    11. @NonNull : 生成非空檢查程式碼。

    12. @Accessors : 提供鏈式呼叫風格的 setter 和 getter 方法。

    13. @Value : 建立不可變類,欄位為 final,並自動生成 getter 方法。

    14. @Wither : 自動生成內容的不可變更新方法。

    15. @EqualsAndHashCode(callSuper = true) : 生成包含父類欄位的 equals 和 hashCode 方法。

    6 被禁用Lombok

    當你所在的公司/團隊禁止使用 Lombok 外掛程式,只允許使用傳統的方式來寫get、set、toString這些基礎方法,有沒有方式能快速生成這些繁瑣的體力活兒呢?IDEA 其實已經幫我們內建了快速生成這些方法的功能;

    按下快捷鍵 Alt + Insert

    或者在物件中點選滑鼠右鍵,選擇 Generate...

    選擇你要生成的內容,就能快速生成對應的方法

    7 GsonFormatPlus

    一款用於快速將 Json 轉換成 Java 物件的外掛程式;現在的系統,前後端互動,絕大部份都使用了 Json ,因此在解析 Json 的時候,都需要一個物件來接收,使用這塊工具,就可以透過 Json 文本,快速生成一個用於 接收 的 Java 物件,省去了逐個手敲內容的繁瑣體力;

    安裝外掛程式

    在外掛程式中心搜尋 GsonFormatPlus ,安裝即可;

    使用

    使用快捷鍵: Alt + S

    或者使用 Alt + Insert ,然後選擇 GsonFormatPlus

    又或者,在物件中點選滑鼠右鍵,選擇 Generate ,再選擇 GsonFormatPlus

    左側貼上 Json 文本,點選 OK ,選擇要生成的內容,下一步即可完成

    8 GenerateAllSetter

    一款一鍵呼叫set、get方法的外掛程式;當開發中遇到一個大物件需要初始化,或者要獲取一個大物件中的內容時,就單純是呼叫他的get、set方法,就能讓人寫的人手軟,這款外掛程式就能完美的幫我們解決這個體力活。

    外掛程式安裝

    外掛程式使用

  • 一鍵呼叫set,get方法

    首先,滑鼠的光標放在物件所處的行

    然後使用快捷鍵 Alt + Enter ,選擇是生成get還是set,幾個生成,set的生成有兩種方式,一種是不賦值,一種是賦予內容的預設值,可以根據自己的實際情況來定:

  • 一鍵轉換物件

    當我們需要做物件轉換時,比如,模型物件轉換成 DTO 物件,也可以借助這個外掛程式一鍵生成

  • 9 String Manipulation

    String 是使用最為頻繁的數據型別,String Manipulation 外掛程式能幫我們快速完成 String 的轉換,如:大小寫切換,排序,遞增,轉義,編碼等。還支持對字串的各種加、解密(MD5、Base64等)操作;基本包含了 String 常用的所有操作

    安裝

    快捷鍵

    Alt + m

    使用

    以下是駝峰命名轉換、加解密、大小寫轉換的範例

    還有更多的功能,可以根據自己的需要來選用

    10 Restfultoolkit

    一套 RESTful 服務開發輔助工具集,完美代替Postman;在 IDEA 中即可完成介面的測試,同時也能快速所搜介面,大大提高我們的檢索,測試效率。

    安裝

    外掛程式中心搜尋 Restfultoolkit 即可快速安裝

    快捷鍵

    Ctrl + Alt + N

    使用

  • 快速搜尋介面

    當有Bug的時候,後端開發人員可能經常需要根據介面名稱/地址來找到介面位置,全域的搜尋 Ctrl + Shift + R 是搜尋的所有內容,要篩選出想要的內容還挺麻煩的;如果是自己寫的程式碼,找起來也還能接受,一旦計畫大,程式碼不熟悉,就如同大海撈針;那麽就可以借助這個工具,來快速搜尋介面,快捷鍵: Ctrl + Alt + N

  • 介面測試

    右側的選單中包含了計畫中的所有介面,可以直接編輯請求物件快速發起介面測試

  • 物件轉Json

    前面介紹了如何將 Json 串轉換成 Java 物件,借助這個外掛程式,就能快速將物件轉換成 Json 文本串

  • 11 Key promoter X

    當年,從 Eclipse 轉 IDEA 的時候,快捷鍵就是最大的障礙之一;能熟練的使用快捷鍵,將能大大提高編碼的效率; Key promoter X 就是一款協助記憶快捷鍵的外掛程式

    安裝

    外掛程式中心搜尋 Key promoter X 即可

    效果

    當你沒使用快件操作某個功能時,外掛程式就會提醒你其對應的快捷鍵是什麽,日積月累,慢慢記憶

    12 Free Mybatis plugin

    一款能幫助我們在 MyBatis 中實作 Mapper 與 xml 之間跳轉的外掛程式

    安裝

    外掛程式中心搜尋 Free Mybatis plugin

    使用

    熟練運用這12款外掛程式,不出意外,相信大家的開發效率一定會有一個質的飛躍...

    >>

    END

    精品資料,超贊福利,免費領

    微信掃碼/長按辨識 添加【技術交流群

    群內每天分享精品學習資料

    最近開發整理了一個用於速刷面試題的小程式;其中收錄了上千道常見面試題及答案(包含基礎並行JVMMySQLRedisSpringSpringMVCSpringBootSpringCloud訊息佇列等多個型別),歡迎您的使用。

    👇👇

    👇點選"閱讀原文",獲取更多資料(持續更新中