简介
lombok是一个IDEA的插件,可以对编译器进行增强,可以使Java代码变得更加简洁、快速。
安装
到Maven仓库导入lombok的jar包
在这里的话我选择的是1.18.8版本
将代码块导入到项目的pom.xml文件中
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.8</version>
<scope>provided</scope>
</dependency>
在IDEA 中安装 lombok 插件
打开 idea>File>Setting>Plugin>Markplace>输入 Lombok回车进行搜索>点击install安装>之后会提示重启 点击重启
常用案例
@Data:
为类的所有属性自动生成 setter/getter、 equals、canEqual、 hashCode、 toString 方法, 如为 final 属性, 则不会为该属性生成 setter方法。
@Getter/@Setter:
在属性上, 生成对应属性的 get 和 set 方法。
@NonNull:
用在属性或或构造器上,Lombok会生成一个非空的声明,可用于校验参数,避免空指针
@Cleanup:
注解能帮助我们自动调用 close()方法, 很大的简化了代码, 比如对于 Connection、 InputStream 等
@EqualsAndHashCode:
默认情况下, 会使用所有非静态( non-static) 和非瞬态( non-transient) 属性来生成 equals 和 hasCode, 也能通过 exclude 注解来排除一些属性。
@ToString:
类使用@ToString 注解, Lombok 会生成一个 toString()方法, 默认情况下, 会输出类名、 所有属性( 会按照属性定义顺序) , 用逗号来分割。 通过将includeFieldNames 参数设为 true, 就能明确的输出 toString()属性。
常见问题
在pojo类上使用了@Data之类的注解,在调用的时候可能出现:getter/setter方法不存在,该问题可能要修改IDEA的设置。