Lombok,你的开发效率神器!

时间:2022-07-28
本文章向大家介绍Lombok,你的开发效率神器!,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

目录

  • 1. 简介
  • 2.1 IntellJ IDEA 安装 Lombok
  • 3. 使用
    • 3.1 具体使用
    • 3.2 常用注解

1. 简介

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

2.1 IntellJ IDEA 安装 Lombok

  1. 依次进入File -> Settings ->Plugins,然后搜索 Lombok 安装即可;
  1. 安装后提示重启 IDE 即可;
  2. 在需要使用的项目中加入 Lombok 编译支持,pom 文件中加入以下依赖;
 <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.10</version>
</dependency>

3. 使用

3.1 具体使用

在需要的实体类中引入相关注解即可,如下图;

3.2 常用注解

@Data

注解在 上:给类的所有属性提供 getset 方法,此外还有 equals、canEqual、hashCode、toString 方法以及 默认参数为空的构造方法

@Setter

注解在 上:为该类所有属性均提供 set 方法,同时提供 默认构造方法

注解在 属性 上:为该属性提供 set 方法,同时提供 默认构造方法

@Getter

注解在 上:为该类所有属性均提供 get 方法,同时提供 默认构造方法

注解在 属性 上:为该属性提供 get 方法,同时提供 默认构造方法

@ToString

注解在 上:生成所有参数的 toString() 方法,同时提供 默认构造方法

@Value

注解在 上:生成 get 方法,以及 equals、hashCode、toString 方法,同时提供 含所有参数的构造方法

@AllArgsConstructor

注解在 上:为类提供一个 全参构造方法,但此时不再提供默认构造方法;

@NoArgsConstructor

注解在 上:为类提供一个 无参构造方法

@RequiredArgsConstructor

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

@NonNull

注解在 属性 上,自动生成一个关于该参数的非空检查,若参数为 null,则抛出一个空指针异常,同时提供 默认构造方法

@EqualsAndHashCode

注解在 上,生成 equals、canEquals、hasnCode 方法;

@Cleanup

注解在 变量 前,保证该变量代表的资源使用后自动关闭,默认调用资源的 close() 方法,若该资源有其它关闭方法,可用 @Cleanup("方法名") 来指定要调用的方法,同时提供 默认构造方法;

@Synchronized

注解在 类方法 或 实例方法:效果与 synchronized 关键字相同,区别在于锁对象不同,对于类方法和实例方法,synchronized 关键字的锁对象分别是 类的 class 对象和 this 对象,而 @Synchronized 的锁对象分别是 私有静态 final 对象 lock 和 私有 final 对象 lock,也可以自己指定锁对象,同时提供默认构造方法;

@SneakyThrows

注解在 方法 上:将方法中的代码用 try-catch 语句包裹,捕获异常并在 catch 中用 Lombok.sneakyThrow(e) 将异常抛出,还可以用 @SneakyThrows(Exception.class) 的形式指定抛出异常类型,同时提供 默认构造方法

@Log4j

注解在 上:为类提供一个属性名为 loglog4j 日志对象,同时提供 默认构造方法

点击查看往期精彩内容