如何使用Lombok来优雅的编码

  • 时间:
  • 浏览:0
  • 来源:大发5分快乐8APP下载_大发5分快乐8APP官网

@SneakyThrows

打开 IDEA 的 Settings 面板,并选取 Plugins 选项,若果点击 “Browse repositories”

@NoArgsConstructor

mark

1、String staticName() default "";

注解在 上, 能够生成 equals、canEqual、hashCode 法律妙招 。

一些注解用在 变量 前面,能够保证此变量代表的资源会被自动关闭,默认是调用资源的 close() 法律妙招 ,若果该资源有其它关闭法律妙招 ,可使用 @Cleanup(“methodName”) 来指定要调用的法律妙招 ,也会生成默认的构造法律妙招

@Cleanup

@ToString

在输入框输入”lombok”,得到搜索结果,点击安装,若果安装提示重启 IDEA,安装成功;

@Setter

@Data

3、http://www.54tianzhisheng.cn/2018/01/09/lombok/

mark

一些注解用在 上,会生成含所有参数的构造法律妙招 ,get 法律妙招 ,此外还提供了equals、hashCode、toString 法律妙招 。

mark

文章参考:

mark

1、 https://blog.wuwii.com/springboot-15.html

一些注解用在 法律妙招 上,能够将法律妙招 中的代码用 try-catch 的话包裹起来,捕获异常并在 catch 中用 Lombok.sneakyThrow(e) 把异常抛出,能够使用 @SneakyThrows(Exception.class) 的形式指定抛出哪种异常,也会生成默认的构造法律妙招 。

@EqualsAndHashCode

mark

mark

一些注解用在 上,能够生成所有参数的 toString 法律妙招 ,后要生成默认的构造法律妙招 。

一些注解用在 类法律妙招 若果 实例法律妙招 上,效果和 synchronized 关键字相同,区别在于锁对象不同,对于类法律妙招 和实例法律妙招 ,synchronized 关键字的锁对象分别是类的 class 对象和 this 对象,而 @Synchronized 的锁对象分别是 私有静态 final 对象 lock 和 私有 final 对象 lock,当然,能够够当时人指定锁对象,此外也提供默认的构造法律妙招 。

2、http://kriszhang.com/lombok/

mark

@Slf4j

mark

mark

mark

在当时人的项目里去掉 lombok 的编译支持,在 pom 文件上面去掉 dependency

mark

它们后要 另另1个多 参数能够设置

注解在 属性 上,会自动产生一另另1个多 关于此参数的非空检查,若果参数为空,则抛出一另另1个多 空指针异常,也会有一另另1个多 默认的无参构造法律妙招 。

@RequiredArgsConstructor

mark

注解在 上;为类提供一另另1个多 属性名为 log 的日志对象,提供默认构造法律妙招 。

注解在 上;提供类所有属性的 get 和 set 法律妙招 ,此外还提供了equals、canEqual、hashCode、toString 法律妙招 。

注解在 属性 上;为单个属性提供 set 法律妙招 ; 注解在 上,为该类所有的属性提供 set 法律妙招 , 都提供默认构造法律妙招 。

若果设置了它,将另另另1个多 的构造法律妙招 的访问修饰符若果变成 私有的,而外去掉 一另另1个多 静态构造法律妙招 ,参数相同,名字是设置的字符串的名字,访问修饰符为公有的。

注解在 上;为类提供一另另1个多 无参的构造法律妙招 。

@Synchronized

注解在 属性 上;为单个属性提供 get 法律妙招 ; 注解在 上,为该类所有的属性提供 get 法律妙招 ,都提供默认构造法律妙招 。

mark

Lombok 是四种 Java™ 实用工具,可用来帮助开发人员消除 Java 的冗长,尤其是对于简单的 Java 对象(POJO)。它通过注解实现一些目的。

@AllArgsConstructor

3、AccessLevel access() default lombok.AccessLevel.PUBLIC;

构造函数访问修饰符;

2、AnyAnnotation[] onConstructor() default {};

在构造法律妙招 上去掉 注解。使用法律妙招 @RequiredArgsConstructor(onConstructor=@__({@AnnotationsGoHere}))}

@NonNull

注解在 上;为类提供一另另1个多 全参的构造法律妙招 ,加了一些注解后,类中不提供默认构造法律妙招 了。

image.png

mark

本文主要站在巨人的肩头,文章内容来源一下三篇文章。本文主要提取了三篇文章中的优点整合而成。

累似 当我们当我们当我们 在 Spring 项目中能够 注入多个值,写一些一些个 @Autowired 很麻烦,就能够使用一些法律妙招 :

@Getter

@Value