官網位址:
https://projectlombok.org/
Project Lombok是一個Java庫,可以自動插入到您的編輯器中并進行建構的工具,為您的Java增添便利。
你再也不用寫一個個的 getter、setter 或 equals 等方法了,隻需要一個注釋,你的類就有了一個功能齊全的生成器、自動化你的日志記錄變量等等。
SpringBoot內建Lombok
- 1. 配置
- 2. 使用
- 3. 常用注解
1. 配置
首先配置IntelliJ IDEA:

然後在配置Maven
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.24</version>
<scope>provided</scope>
</dependency>
2. 使用
import lombok.Data;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
/**
* Lombok測試
*
* @author Jack魏
* @since 2022-08-21
*/
@Data
class LombokTest {
private String name;
private Integer age;
@Test
void testGetter() {
LombokTest test = new LombokTest();
Integer age = test.getAge();
Assertions.assertNull(age, " expected: null ");
}
@Test
void testSetter() {
LombokTest test = new LombokTest();
test.setAge(18);
Integer age = test.getAge();
Assertions.assertNotNull(age, " expected: not null ");
}
}
可以看到沒有getter、setter也是可以使用的。
3. 常用注解
注解 | 作用 |
@NonNull | 如果對象是null抛出空指針異常 |
@Cleanup | 自動清理資源 |
@Setter | 自動生成setter方法 |
@Getter | 自動生成getter方法 |
@ToString | 自動生成toString方法 |
@EqualsAndHashCode | 自動生成equals方法和hashCode方法 |
@RequiredArgsConstructor | 生成final字段的構造器,并判斷是否不能為空的值 |
@AllArgsConstructor | 生成所有字段的構造器,并判斷是否不能為空的值 |
@NoArgsConstructor | 生成一個空的構造器 |
@Data | @Getter,@Setter,@ToString,@EqualsAndHashCode和@RequiredArgsConstructor |