Lombok是什么
Lombok
是java中的一个库,它可以帮助我们减少重复代码的编写,比如getter/setter/toString
,我们只需使用一个注解就可以让类拥有getter/setter等方法,提高开发效率
- 官网介绍
Project Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java. Never write another getter or equals method again, with one annotation your class has a fully featured builder, Automate your logging variables, and much more
在IDEA中使用Lombok
安装插件
在IDEA中使用Lombok需要安装插件,否则使用lombok会报错
打开IDEA的Setting –> 选择Plugins选项 –> 选择Browse repositories –> 搜索lombok –> 点击安装 –> 安装完成重启IDEA –> 安装成功
引入依赖
在pom.xml文件中添加如下依赖
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.2</version>
<scope>provided</scope>
</dependency>
使用
在对应的类上添加相关注解即可
@Getter // 生成所有getter
@Setter // 生成所有setter
@AllArgsConstructor // 生成所有参数的构造器
@NoArgsConstructor // 生成无参构造器
@ToString // 生成toString方法
public class Cart {
private Integer id;
private Integer userId;
private Integer productId;
private Integer quantity;
private Integer checked;
private Date createTime;
private Date updateTime;
}
- 效果
Lombok常用注解
@Getter
: 生成所有getter
@Setter
: 生成所有setter
@AllArgsConstructor
: 生成所有参数的构造器
@NoArgsConstructor
: 生成无参构造器
@ToString
: 生成toString方法
@EqualsAndHashCode
: 生成equals和hashcode方法
@Data
: 生成getter、setter、equals、hashCode、toString方法
@ToString
和@EqualsAndHashCode
有两个重要的参数: of
和exclude
,of
表示之包含哪些字段,exclude
表示排除哪些字段
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
@ToString(exclude = "userId") // 生成ToString方法是不要exclude
@EqualsAndHashCode(of = "quantity") // 使用quantity字段片段两个对象是否一致
public class Cart {
private Integer id;
private Integer userId;
private Integer productId;
private Integer quantity;
private Integer checked;
private Date createTime;
private Date updateTime;
}