Lombok

Intellij

  • 安装Lombok插件

  • 配置Intellij

Build -> Compiler -> Annotation Processors,启用Enable annotation processing

pom.xml

1
2
3
4
5
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.18</version>
</dependency>

注解

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@Getter and @Setter / 自动为属性提供 Set 和 Get 方法

@ToString / 该注解的作用是为类自动生成 toString()方法

@EqualsAndHashCode / 为对象字段自动生成 hashCode 和 equals 实现

@AllArgsConstructor, @RequiredArgsConstructor and @NoArgsConstructor / 顾名思义,为类自动生成对应参数的 constructor

@Log, @Log4j, @Log4j2, @Slf4j, @XSlf4j, @CommonsLog, @JBossLog / 自动为类添加对应的 log 支持

@Data / 自动为所有字段添加 @ToString, @EqualsAndHashCode, @Getter,为非 final 字段添加 @Setter,和 @RequiredArgsConstructor,本质上相当于几个注解的综合效果

@NonNull / 自动帮助我们避免空指针。作用在方法参数上的注解,用于自动生成空值参数检查

@Cleanup / 自动帮我们调用 close()方法。作用在局部变量上,在作用域结束时会自动调用 close 方法释放资源

其中使用最频繁的是@Data,@Slf4j