官方介绍:Project Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java.
Never write another getter or equals method again, with one annotation your class has a fully featured builder, Automate your logging variables, and much more.
大意:永远不要再编写另一个getter或equals方法,通过一个注释,类就有了一个功能齐全的生成器,自动化日志记录变量等。
直接提供包文件
记得还必须到向工具跟目录安装
直接运行安装即可如下图。
1.Lombok的使用,介绍了几个常用的注解
@Getter / @Setter
可以作用在类上和属性上,放在类上,会对所有的非静态(non-static)属性生成Getter/Setter方法,放在属性上,会对该属性生成Getter/Setter方法。并可以指定Getter/Setter方法的访问级别。
@EqualsAndHashCode
默认情况下,会使用所有非瞬态(non-transient)和非静态(non-static)字段来生成equals和hascode方法,也可以指定具体使用哪些属性。
@ToString
生成toString方法,默认情况下,会输出类名、所有属性,属性会按照顺序输出,以逗号分割。
@NoArgsConstructor, @RequiredArgsConstructor and @AllArgsConstructor
无参构造器、部分参数构造器、全参构造器,当我们需要重载多个构造器的时候,Lombok就无能为力了。
@Data:包含@ToString, @EqualsAndHashCode, 所有属性的@Getter, 所有non-final属性的@Setter和@RequiredArgsConstructor的组合,通常情况下,基本上使用这些注解就足够了。
更多的请参见: https://projectlombok.org/features/all
直接翻译官方的
val
最后!无忧无虑的最终局部变量。
var
性情不定地!无忧无虑的局部变量。
@NonNull
或者:我学会了如何停止担心并喜欢NullPointerException。
@Cleanup
自动资源管理:close()
安全地调用您的方法,没有麻烦。
@Getter/@Setter
永远不要再写public int getFoo() {return foo;}
了。
@ToString
无需启动调试器即可查看您的字段:只需让lombok toString
为您生成一个!
@EqualsAndHashCode
平等变得简单:从对象的字段生成hashCode
和equals
实现..
@NoArgsConstructor, @RequiredArgsConstructor and @AllArgsConstructor
按订单生成的构造函数:生成不带参数的构造函数,每个final / non-nullfield一个参数,或每个字段一个参数。
@Data
现在所有一起:为快捷方式@ToString
,@EqualsAndHashCode
, @Getter
在所有领域,@Setter
所有非final字段,以及@RequiredArgsConstructor
!
@Value
不可变的课程变得非常容易。
@Builder
......鲍勃是你的叔叔:用于创建对象的无懈可击的花式裤子API!
@SneakyThrows
大胆抛出已检查的异常,以前没有人抛出它们!
@Synchronized
synchronized
做得对:不要暴露你的锁。
@Getter(lazy=true)
懒惰是一种美德!
@Log
船长的日志,标榜24435.7:“又是什么线?”
experimental
前往实验室:我们正在研究的新东西。