
Lombok详细教程
1.各个注解用法,包括@Data ,@ToString, @NonNull等
2.配置文件配置
Amos-Chen
只能永远把艰辛的劳动看作是生命的必要;即使没有收获的指望,也能心平气和的继续耕种。
展开
-
【lombok】@Data - @ToString/@EqualsAndHashCode/@Getter/@Setter/@RequiredArgsCons多注解组合注解
概述@Data是将@ToString,@EqualsAndHashCode,@Getter/@Setter和RequiredArgsConstructor功能捆绑在一起的方便快捷方式。也就是说,@Data生成通常与简单POJO(普通旧JAVA对象)和组件相关联的所有样板代码:所有字段的getter方法,所有非final字段的setter方法,涉及类字段的相应toString,equals和h...原创 2019-02-13 12:31:06 · 2267 阅读 · 0 评论 -
【lombok】@NoArgsConstructor/@RequirArgsConstructor/@AllArgsConstructor - 生成无参构造器,指定参数构造器或包含所有参数的构造器
这三个注解的集合接受某些字段的一个参数,简单的用于分配这个参数给这个字段。@NoArgsConstructor生成的构造器无参数。如果这是不可能的(因为有final字段),则会导致编译错误。除非使用@NoArgsConstructor(force=true),然后将所有的final字段都初始化为0/false/null。对于有约束的字段,比如@NonNull,不会生成任何检查,所以请注意直到...原创 2019-02-12 17:58:49 · 13577 阅读 · 0 评论 -
【lombok】@EqualsAndHashCode - 相等更简单:从对象的字段生成hashCode和equals实现
@EqualsAndHashCode任意类的定义都可以添加@EqualsAndHashCode注解,让lombok帮你生成equals(Object other)和hashCode()方法的实现。默认情况下会使用非静态和非transient型字段来生成,但是你也通过在字段上添加@EqualsAndHashCode.Include或者@EqualsAndHashCode.Exclude修改你...原创 2019-01-20 19:04:10 · 30858 阅读 · 0 评论 -
【lombok】@ToString - 不再需要自己覆写toString,让lombok帮你生成
@ToString任何类定义都可以用@ToString注释,让lombok生成toString()方法的实现。默认情况下,它会按顺序打印您的类名称以及每个字段,并以逗号分隔。通过将includeFieldNames参数设置为true,您可以为toString()方法的输出添加一些清晰度(但也有一些长度)。默认情况下,将打印所有非静态字段。如果要跳过某些字段,可以使用@ ToStrin...原创 2019-01-19 22:49:55 · 35278 阅读 · 0 评论 -
【lombok】@Getter @Setter 和 public Object getFoo() {return foo;} 说拜拜
@Getter @Setter您可以使用@Getter和/或@Setter注释任何字段(类属性),让lombok自动生成默认的get方法 / set方法。默认的getter返回该字段(被@Getter注释的字段),如果字段名为foo,则命名为getFoo(如果字段的类型为boolean,则命名为isFoo)默认的setter返回为void,如果字段名为foo,则命名为setFoo...原创 2019-01-19 16:25:39 · 531 阅读 · 0 评论 -
【lombok】@Cleanup - 自动资源管理,安全的调用close方法
@Cleanup当在处理文件对象,或者数据库资源时,我们总是会忘记close,可能引发内存溢出。如果手动去调用close方法,代码又会非常长,现在有了@Cleanup , 我们不再需要担心这些问题。您可以使用@Cleanup确保在代码执行路径退出当前作用域之前自动清除给定资源。 您可以通过使用@Cleanup注释来注释任何局部变量声明来执行此操作,如下所示:@Cleanup Inpu...原创 2019-01-18 18:07:46 · 7515 阅读 · 0 评论 -
【lombok】@NonNull - 不再忧虑NullPointerException
@NonNull说到NullPointerException,可能会是所有java搬砖工的噩梦吧?现在有了@NonNull , 让我们不在忧虑NPE!!!您可以在方法或构造函数的参数上使用@NonNull让lombok为您生成null-check语句。如果lombok为您生成整个方法或构造函数(例如@Data),Lombok总是将字段上通常称为@NonNull的各种注释视为生成空...原创 2019-01-18 17:36:47 · 18897 阅读 · 5 评论 -
【lombok】var - 无忧的局部变量
可变局部变量varvar的工作原理与val完全相同,但局部变量不会标记为final。该类型仍然推断至初始化表达式,并且任何重新的赋值都是合法的(因为变量不再是final类型),但不会再查找以确定适当的类型(我个人的理解是: 已推导出某个类型,虽然又重新赋值,但不会再重新推导出另一个合适类型)。例如,var x =“Hello”; x = Color.RED; 不起作用; x的类型...原创 2019-01-17 00:22:41 · 5449 阅读 · 0 评论 -
【lombok】val - final型局部变量
背景闲来无事,总是想写一些东西。感谢强大的lombok,觉得有必要写几篇文章总结一下它的用法。不可变局部变量val您可以使用val作为局部变量声明的类型,而不是实际写入类型。 执行此操作时,将从初始化表达式推断出类型。 本地变量也将成为最终变量。 此功能仅适用于局部变量和foreach循环,而不适用于类属性(field)。 初始化表达式是必需的。val实际上是一种“类型”,在...原创 2019-01-17 00:23:41 · 7032 阅读 · 3 评论