下面我来详细讲解“Spring Boot中lombok的安装与使用详解”的完整攻略。
什么是lombok?
Lombok是一种Java库,它可以自动帮我们生成getter、setter、构造函数、日志记录等代码,让我们可以专注于业务代码的编写。
安装lombok
Spring Boot默认并不包含lombok库,因此需要手动添加。
Maven中添加依赖
在maven工程中添加以下依赖:
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.20</version>
<scope>provided</scope>
</dependency>
在IDE中安装lombok插件
为了让IDE可以识别lombok库的注解,需要在IDE中安装lombok插件。
以IntelliJ IDEA为例,打开Settings -> Plugins,搜索lombok插件,安装并重启IDE。
手动安装lombok
除了Maven依赖和IDE插件,我们也可以手动安装lombok。
从官网https://projectlombok.org/download下载lombok.jar文件,双击运行即可完成安装。
使用lombok
常用注解
- @Getter / @Setter
生成属性的getter/setter方法。
@Getter
@Setter
public class User {
private String name;
private int age;
}
上面的代码会自动生成以下代码:
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return this.age;
}
public void setAge(int age) {
this.age = age;
}
- @ToString
自动生成toString方法,方便我们在调试的时候输出对象信息。
@ToString
public class User {
private String name;
private int age;
}
上面的代码会自动生成以下代码:
public String toString() {
return "User(" +
"name=" + this.getName() + ", " +
"age=" + this.getAge() +
")";
}
- @NoArgsConstructor / @AllArgsConstructor
自动生成无参/带参构造函数。
@NoArgsConstructor
@AllArgsConstructor
public class User {
private String name;
private int age;
}
上面的代码会自动生成以下代码:
public User() {}
public User(String name, int age) {
this.name = name;
this.age = age;
}
示例一:使用lombok注解简化代码
@Getter
@Setter
@ToString
@AllArgsConstructor
public class User {
private String name;
private int age;
}
public class UserService {
public void addUser(String name, int age) {
User user = new User(name, age);
System.out.println(user);
}
}
上面的代码中,我们使用了@Getter、@Setter、@ToString和@AllArgsConstructor注解,用来生成getter、setter、toString和有参构造函数。相比传统方式,这种方式简化了很多代码。
示例二:使用lombok注解记录日志
在使用lombok的@Slf4j注解之前,我们需要先引入日志库,如Log4j或者Slf4j。
<!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-log4j12 -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.32</version>
</dependency>
使用@Slf4j注解,可以方便地在类中使用日志记录。
@Slf4j
public class UserService {
public void addUser(String name, int age) {
User user = new User(name, age);
log.info("Add user: {}", user);
}
}
上面的代码中,我们使用@Slf4j注解生成了一个名为log的日志记录器,用来记录日志,减少了手写logger的繁琐工作。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Spring Boot中lombok的安装与使用详解 - Python技术站