Java之Lombok库的使用和讲解
前言
Lombok是一个==Java库==,能自动插入编辑器并构建工具,简化Java开发。通过添加注解的方式,不需要为类编写getter或eques方法,同时可以自动化日志变量。
在项目中使用Lombok可以减少很多重复代码的书写。比如说getter/setter/toString等方法的编写。
lombok官网:https://projectlombok.org/
一、IDEA中lombok的配置
点击File->Settings->plugins->搜索lombok并安装该插件
方法一:
jar包下载路径:https://projectlombok.org/download
下载jar包后导入项目中。
方法二:
maven配置
maven官方网站:Maven Repository: org.projectlombok » lombok (mvnrepository.com)
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.26</version>
<scope>provided</scope>
</dependency>
二、lombok的使用
Lombok有哪些注解
@Setter
@Getter
@Data
@Log(这是一个泛型注解,具体有很多种形式)
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode
@NonNull
@Cleanup
@ToString
@RequiredArgsConstructor
@Value
@SneakyThrows
@Synchronized
@Accessors
@Slf4j
-
1、@setter:在JavaBean中使用,注解会生成对应的setter方法
-
2、@getter:在JavaBean中使用,注解会生成对应的getter方法
-
3、@Data:在JavaBean中使用,注解包含包含getter、setter、NoArgsConstructor注解
- @Value注解和@Data类似,区别在于它会把所有成员变量默认定义为private final修饰,并且不会生成set方法
-
4、@Log4j:在需要打印日志的类中使用,项目中使用log4j日志框架
-
5、@AllArgsConstructor:在JavaBean中使用,注解会生成对应的有参构造方法
- @RequiredArgsConstructor :生成private构造方法,使用staticName选项生成指定名称的static方法。
-
6、@NoArgsConstructor:在JavaBean中使用,注解会生成对应的无参构造方法
-
7、@EqualsAndHashCode:在JavaBean中使用,注解会自动重写对应的equals方法和hashCode方法
-
8、@NonNull:注解快速判断是否为空,为空抛出java.lang.NullPointerException
-
9、@Cleanup:注解用于确保已分配的资源被释放(IO的连接关闭)
-
10、@ToString:在JavaBean中使用,注解会自动重写对应的toStirng方法
-
@ToString(exclude={“column1”,“column2”}):排除多个column列所对应的元素
-
@ToString(of={“column1”,“column2”}):只生成包含多个column列所对应的元素
-
-
11、@RequiredArgsConstructor : 生成一个包含 “特定参数” 的构造器,特定参数指的是那些有加上 final 修饰词的变量们
- 补充一下,如果所有的变量都是正常的,都没有用 final 修饰的话,那就会生成一个没有参数的构造器
-
12、@Value:
-
属性:
- staticConstructor:使生成的构造方法私有化
并且生成一个返回类型为当前对象的无参静态方法,方法名为 staticConstructor 值
- staticConstructor:使生成的构造方法私有化
-
-
13、SneakyThrows:编写代码出现异常时,如果我们不想(或不能)在抛出异常的地方直接处理时可以使用该注解。
-
14、@Synchronized:注解自动添加到同步机制,生成的代码并不是直接锁方法,而是锁代码块, 作用范围是方法上
-
15、@Accessors(chain = true):链式风格,在调用set方法时,返回这个类的实例对象
-
16、@Slf4j:在需要打印日志的类中使用,项目中使用slf4j日志框架
在日常开发中我们常用到的是@Data、@AllArgsConstructor、@NoArgsConstructor
不加注解时:
加上@Data注解时:
加上@AllArgsConstructor注解时:(多了有参构造)
加上@NoArgsConstructor注解时:(多了无参构造)
==这个在开发中是一种比较偷懒的用法(初学者不需要掌握)。==
总结
以上就是Java之Lombok库的使用和讲解的相关知识,希望对你有所帮助
积跬步以至千里,积怠惰以至深渊。时代在这跟着你一起努力哦!
- 点赞
- 收藏
- 关注作者
评论(0)