简介
lombook是一个非常方便的插件,使用注解可以简化一些必须有但又显得臃肿的代码,比如set和get方法,属性较多时,一堆的get和set方法占用很多行,影响阅读性,以下是lombook的使用。
1 引入lombook依赖
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
2 idea安装lombook插件
lombook插件和lombook依赖必须同时有,缺一不可。 
3 添加注解
lombook的常用注解
@Data 注解在类上;提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法
@Setter :注解在属性上;为属性提供 setting 方法
@Setter :注解在属性上;为属性提供 getting 方法
@Log4j :注解在类上;为类提供一个 属性名为log 的 log4j 日志对象
@NoArgsConstructor :注解在类上;为类提供一个无参的构造方法
@AllArgsConstructor :注解在类上;为类提供一个全参的构造方法
@Cleanup : 可以关闭流
@Builder : 被注解的类加个构造者模式
@Synchronized : 加个同步锁
@SneakyThrows : 等同于try/catch 捕获异常
@NonNull : 如果给参数加个这个注解 参数为null会抛出空指针异常
@Value : 注解和@Data类似,区别在于它会把所有成员变量默认定义为private final修饰,并且不会生成set方法。
在User这个类上加入@Data @NoArgsConstructor @AllArgsConstructor 打开结构可看到 get ,set等方法已经有了,但类里面的代码却不会显示。  lombook可使用注解,而不必手动生成set,get等方法,非常的方便。 不过lombook插件也有弊端,开发工具必须安装lombook插件才能使用,当团队协同开发时,有一个人使用了这个插件,其他人都必须被迫的安装这个插件,总之有其利也有其弊。
|