目录
什么是lombok
lombok是一个实用的java类库,能通过注解的形式自动生成构造器/Getter/Setter/equals/hashcode/toString等方法,并可以自动生成日志变量、简化java开发,提高效率
注解 | 作用 |
@Getter/@Setter | 为所有的属性提供get/set方法 |
@ToString | 会给类自动生成易阅读的toString方法 |
@EqualsAndHashCode | 根据类所拥有的非静态字段自动重写equals方法和hashCode方法 |
@Data | 提供了更综合的生成代码功能(@Getter+@Setter+@EqualsAndHashcode+@toString) |
@NoArgsConstructor | 为实体类生成无参构造函数 |
@AllArgsConstructor | 为实体类生成除static字段之外带有各参数的参构造方法 |
lombok使用
在pom.xml中引入lombok依赖,由于springboot中的父依赖集成了lombok统一管理,所有不用写version标签,首先确认是否添加父依赖
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.6.13</version>
<relativePath/>
</parent>
添加后再添加lombok依赖
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
重新写一个bean.User实体类,可以看到代码变得很简单,而@Data包括了@Getter+@Setter+@EqualsAndHashcode+@toString
package com.gzist.bean;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class User {
private String id;
private String name;
private Integer sex;
private String grade;
}
在实体类对象中可以看到我们需要的方法
编译后,可以看到编译后的字节码文件自动生成了对应的方法