Lombok – 一款优秀的java库
Lombok 是一个非常流行的 Java 库,它可以帮助开发者减少繁琐的样板代码,如 getter、setter、构造器、equals 和 hashcode 等方法。Lombok 通过注解的方式自动生成这些方法,极大地提高了开发效率
Lombok 的主要功能
@Data
自动生成所有字段的getter
和setter
方法。
自动生成equals
和hashCode
方法。
自动生成toString
方法。@AllArgsConstructor
自动生成包含所有字段的构造器。@NoArgsConstructor
自动生成无参构造器。@Getter
和@Setter
分别生成所有字段的getter
和setter
方法。
可以作用于类级别或字段级别。@ToString
自动生成toString
方法。@EqualsAndHashCode
自动生成equals
和hashCode
方法。@Value
创建不可变对象(所有字段默认为final
并且只生成getter
方法)。@Builder
自动生成构建器模式。
如何安装
1. 添加依赖
首先,在项目的 pom.xml
文件中添加 Lombok 依赖:
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.24</version> <!-- 使用最新版本 -->
<scope>provided</scope>
</dependency
2. 配置IDE
如果使用idea,记得在插件库中下载Lombok插件
如何使用
这里介绍一个比较常用的@Data
现在假设有一个Student
类
public class SysStudent {
private Integer id;
private String name;
private Integer age;
private String sex;
}
如果我们要取这个学生的名字又要设置名字怎么办,一般都是在类中添加getName()
方法还有setName()
方法
public class SysStudent {
private Integer id;
private String name;
private Integer age;
private String sex;
public String getName(){
return name;
}
public String setName(String name){
return this.name = name;
}
}
那如果有很多属性要获取要修改咋办?肯定不能一直 get/set 吧
咱们试试@Data
@Data
public class SysStudent {
private Integer id;
private String name;
private Integer age;
private String sex;
}
再在代码中试试,发现既然也能使用 get/set,这下子可节约了不少时间
当然 Lombok 不只有这点功能,大家可以自己试试