Lombok在工程中的使用

  在公司的项目中应用了Lombok插件,在idea中需要启用Annotation Processors中的Enable annotation processing选项,之后才能使用Lombok的各个注解

        

  还需要添加依赖

    <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
    <dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.16.20</version>
    <scope>provided</scope>
    </dependency>

  之后就可以熟悉Lombok的各种注解

Lombok的注解有很多

  • @Setter
  • @Getter
  • @Data
  • @Log(这是一个泛型注解,具体有很多种形式)
  • @AllArgsConstructor
  • @NoArgsConstructor
  • @EqualsAndHashCode
  • @NonNull
  • @Cleanup
  • @ToString
  • @RequiredArgsConstructor
  • @Value
  • @SneakyThrows
  • @Synchronized

  @Setter,@Getter,@ToString,@Synchronized,不多赘述,减少了项目中的方法的书写

  @NonNull

  该注解使用在属性上,该注解用于属的非空检查,当放在setter方法的字段上,将生成一个空检查,如果为空,则抛出NullPointerException。 
该注解会默认是生成一个无参构造。 

  @EqualsAndHashCode

  该注解使用在类上,该注解在类级别注释会同时生成equalshashCode。 
注意继承关系的时候该注解的使用。

  @Data

  该注解使用在类上,该注解是最常用的注解,它结合了@ToString,@EqualsAndHashCode, @Getter和@Setter。本质上使用@Data注解,类默认@ToString@EqualsAndHashCode以及每个字段都有@Setter@getter。该注解也会生成一个公共构造函数,可以将任何@NonNullfinal字段作为参数。

  @AllArgsConstructor

  该注解使用在类上,该注解提供一个全参数的构造方法

  @NoArgsConstructor

  该注解使用在类上,该注解提供一个无参构造 

  @RequiredArgsConstructor

  该注解使用在类上,使用类中所有带有 @NonNull 注解的或者带有 final 修饰的成员变量生成对应的构造方法

  @Value

  这个注解用在 类 上,会生成含所有参数的构造方法,get 方法,此外还提供了equals、hashCode、toString 方法。 没有set方法

  @Cleanup

  该注解使用在属性前,该注解是用来保证分配的资源被释放。在本地变量上使用该注解,任何后续代码都将封装在try/finally中,确保当前作用于中的资源被释放。默认@Cleanup清理的方法为close,可以使用value指定不同的方法名称。 

  @SneakyThrows

  该注解使用在方法上,这个注解用在 方法 上,可以将方法中的代码用 try-catch 语句包裹起来,捕获异常并在 catch 中用 Lombok.sneakyThrow(e) 把异常抛出,可以使用 @SneakyThrows(Exception.class) 的形式指定抛出哪种异常

猜你喜欢

转载自www.cnblogs.com/kkyycom/p/9273867.html
今日推荐