Lombok 安裝配置及使用方法


pom.xml 引入依賴

<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
<!--Feb 07, 2020-->
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.12</version>
    <scope>provided</scope>
</dependency>

IDEA 安裝插件及設置

File/Settings/Plugins/Lombok/Install/OK
File/Settings/Build,Execution,Deployment/Compiler/Annocation Processors/√ Enable annocation processing

常用注解說明

@Getter/@Setter
注解在屬性上,為相應的屬性自動生成Getter/Setter方法。
boolean 類型屬性生成 isFoo/setFoo;
其他類型屬性生成 getFoo/setFoo;
可以通過 AccessLevel 設置訪問級別(PUBLIC, PROTECTED, PACKAGE, PRIVATE);
如果該注解放在類上,則為所有的非靜態屬性自動生成Getter/Setter方法。

@ToString
注解在類上,自動生成toString()方法,默認輸出類名、用逗號分割的所有屬性(按照屬性定義順序)。
可以通過 includeFieldNames 設置為 true 顯示更詳細的字段信息;
默認打印非靜態的所有字段;
可以在字段前使用 @ToString.Exclude 排除打印;
使用 @ToString(onlyExplicitlyIncluded = true),然后在字段前使用 @ToString.Include 加入打印。

@EqualsAndHashCode
注解在類上,自動生成equals(Object other)和hashCode()方法。
默認使用非靜態(non-static)和非瞬態(non-transient)的所有字段;
可以在字段前使用 @EqualsAndHashCode.Exclude 排除;
使用 @EqualsAndHashCode(onlyExplicitlyIncluded = true),然后在字段前使用 @EqualsAndHashCode.Include 加入。

@NonNull
注解在方法或構造器的參數上,生成非空檢查聲明。等價於:
if (param == null) 
	throw new NullPointerException("param is marked @NonNull but is null");

@Data
注解在類上,等於 @ToString, @EqualsAndHashCode, @Getter/@Setter 和 @RequiredArgsConstructor, @NonNull 的集合。

@Cleanup
注解在資源實例化語句上,通過 try/finally 自動調用 close() 方法回收資源。

@NoArgsConstructor
注解在類上,自動生成沒有參數的構造函數。

@RequiredArgsConstructor
為所有帶 @NonNull 注解和以 final 修飾的未經初始化的字段生成帶參數的構造函數。

@AllArgsConstructor
注解在類上,自動生成所有參數的構造函數。

參考

https://projectlombok.org/features/all

https://blog.csdn.net/weixin_41540822/article/details/86606513


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM