Lombok的作用主要是简化JavaBean,使用Lombok之后,可以不用写JavaBean中的setter、getter、toString及构造方法。除此之外,还可以注入log日志对象。下面分别对 没有使用Lombok 和 使用Lombok后 的代码做说明。
1、在使用Lombok之前
在使用Lombok之前创建一个javaBean实体类需要为javaBean实体类写上setter、getter、toString及构造方法。以 User 为例,下面创建一个 User 类,属性分别是 id、name、age、salary,代码如下:
public class User {
private Integer id;
private String name;
private Integer age;
private Double salary;
public User() {
}
public User(Integer id, String name, Integer age, Double salary) {
this.id = id;
this.name = name;
this.age = age;
this.salary = salary;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
public Double getSalary() {
return salary;
}
public void setSalary(Double salary) {
this.salary = salary;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", name='" + name + ''' +
", age=" + age +
", salary=" + salary +
'}';
}
}
2、使用Lombok之后:
Lombok的使用步骤:
01、在pom文件中天添加 Lombok 依赖,如下:02、在Idea中添加 Lombok 插件org.projectlombok lombok1.18.22
Idea2021版本之前:找到idea的file-----settings——plugin选项——搜索Lombok——安装
Idea2021版本之后:找到idea的file-----settings——plugin选项——搜索Hrisey Plugin——安装
安装完后重启IDEA即可。
03、 使用 Lombok 之后,完全可以使用注解代替 setter、getter、toString及构造方法。- 使用注解 @Data代替 setter、getter,
- 使用注解@ToString 代替toString方法,
- 使用注解@NoArgsConstructor() 代替无参构造函数
- 使用注解@AllArgsConstructor() 代替有参构造函数
- 使用@Slf4j导入log对象
以 User 为例,下面创建一个 User 类,属性分别是 id、name、age、salary,代码如下:
@Data
@ToString
@NoArgsConstructor
@AllArgsConstructor
@Slf4j
public class User {
private Integer id;
private String name;
private Integer age;
private Double salary;
public void showInfo(){
log.info(String.format("user info is %d + %s + %d + %f", id,name,age,salary));
}
}
3、devtools工具使用
devtools工具是帮助我们进行热部署的,当我修改代码后,无论是前端还是后端吗,只需要配置此工具,则可以进行热部署,不需要每次重新启动服务。步骤是
01、添加devtools依赖
org.springframework.boot spring-boot-devtools2.2.6.RELEASE
02、 修改代码后按 ctrl + F9 (== Build Project :编译代码)即可,无需重启服务



