Lombok,你的開發效率神器!

目錄


  • 1. 簡介

  • 2.1 IntellJ IDEA 安裝 Lombok

  • 3. 使用

    • 3.1 具體使用

    • 3.2 常用註解


1. 簡介

Lombok 是一種 Java 實用工具,可用來幫助開發人員消除 Java 代碼的冗長,尤其是對於簡單的 Java 對象(POJO),通過註解實現這一目的。

2.1 IntellJ IDEA 安裝 Lombok

  1. 依次進入 File -> Settings ->Plugins,然後搜索 Lombok 安裝即可;
  1. 安裝後提示重啓 IDE 即可;
  2. 在需要使用的項目中加入 Lombok 編譯支持,pom 文件中加入以下依賴;
 <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.10</version>
</dependency>

3. 使用

3.1 具體使用

在需要的實體類中引入相關注解即可,如下圖;

3.2 常用註解

@Data

註解在 上:給類的所有屬性提供 getset 方法,此外還有 equals、canEqual、hashCode、toString 方法以及 默認參數爲空的構造方法

@Setter

註解在 上:爲該類所有屬性均提供 set 方法,同時提供 默認構造方法

註解在 屬性 上:爲該屬性提供 set 方法,同時提供 默認構造方法

@Getter

註解在 上:爲該類所有屬性均提供 get 方法,同時提供 默認構造方法

註解在 屬性 上:爲該屬性提供 get 方法,同時提供 默認構造方法

@ToString

註解在 上:生成所有參數的 toString() 方法,同時提供 默認構造方法

@Value

註解在 上:生成 get 方法,以及 equals、hashCode、toString 方法,同時提供 含所有參數的構造方法

@AllArgsConstructor

註解在 上:爲類提供一個 全參構造方法,但此時不再提供默認構造方法;

@NoArgsConstructor

註解在 上:爲類提供一個 無參構造方法

@RequiredArgsConstructor

註解在 上:使用類中所有帶 @NonNull 註解的或帶有 final 修飾的成員變量生成對應構造方法;

@NonNull

註解在 屬性 上,自動生成一個關於該參數的非空檢查,若參數爲 null,則拋出一個空指針異常,同時提供 默認構造方法

@EqualsAndHashCode

註解在 上,生成 equals、canEquals、hasnCode 方法;

@Cleanup

註解在 變量 前,保證該變量代表的資源使用後自動關閉,默認調用資源的 close() 方法,若該資源有其它關閉方法,可用 @Cleanup("方法名") 來指定要調用的方法,同時提供 默認構造方法;

@Synchronized

註解在 類方法 或 實例方法:效果與 synchronized 關鍵字相同,區別在於鎖對象不同,對於類方法和實例方法,synchronized 關鍵字的鎖對象分別是 類的 class 對象和 this 對象,而 @Synchronized 的鎖對象分別是 私有靜態 final 對象 lock 和 私有 final 對象 lock,也可以自己指定鎖對象,同時提供默認構造方法;

@SneakyThrows

註解在 方法 上:將方法中的代碼用 try-catch 語句包裹,捕獲異常並在 catch 中用 Lombok.sneakyThrow(e) 將異常拋出,還可以用 @SneakyThrows(Exception.class) 的形式指定拋出異常類型,同時提供 默認構造方法

@Log4j

註解在 上:爲類提供一個屬性名爲 loglog4j 日誌對象,同時提供 默認構造方法


點擊查看往期精彩內容

沒想到吧,Markdown 還能這麼玩!

寫給女朋友看的系統安裝教程, 包學包會!

Java 面試必備之基礎篇最新版!



轉了嗎
讚了嗎
在看嗎





本文分享自微信公衆號 - 村雨遙(cunyu1943)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。

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