lombok插件,可以让我们的代码变得更加简洁。通常,我们习惯了对实体类做set,get,toString等方法,虽然工具也有方法帮助我们快速生成这些方法,但是总的来说,还是比较繁琐,lombok插件,用几个注解,帮我们实现了这个功能,在实体类的编写中,我们只需要在类上通过@Setter,@Getter,@ToString或者@Data就能达到这样的效果。
lombok插件安装之后,构建的工程,必须是maven工程,如果编写了实体,需要通过mvn compile命令生成我们需要的代码。这里介绍eclipse安装lombok插件。eclipse安装lombok插件,不像别的插件,需要下载安装,这里只需要运行maven仓库中的lombok-1.16.22.jar这个文件,然后指定eclipse安装目录,然后安装即可。
1、运行java -jar lombok-1.16.22.jar,会打开lombok插件安装的可视化界面。
2、在界面里,我们需要手动指定eclipse安装目录。然后点击Install/Update按钮。
手动指定eclipse安装目录的位置:
点击Install/Update按钮,实现安装,如果不出意外,基本一下子就会成功:
安装成功,会在eclipse安装目录里面多一个lombok.jar的文件:
另外,安装成功之后,会在eclipse.ini文件中多出一行设置:
3、最后,我们需要在eclipse.ini配置文件中,增加一行配置:-vmargs -javaagent:lombok.jar
至此,eclipse的lombok插件安装成功,我们可以重启eclipse。
为了验证插件安装成功,我们新建一个maven工程webapp,加入相关依赖:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.5.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
<addResources>true</addResources>
</configuration>
</plugin>
</plugins>
</build>
编写一个实体类 User:
package com.xxx.webapp.entity;
import lombok.Data;
//@Data
public class User {
private String id;
private String username;
private String password;
private String mobile;
}
在没有加入注解@Data的时候,实体类会给出提示。并且测试类会出现编译错误。
当我们加入lombok提供的注解@Data,那么瞬间User实体不出现提示,而且UserTest类,也不报编译错误了。
最后,测试时,打印信息如下:
User(id=1, username=admin, password=123456, mobile=15011189000)
说明@Data注解也包含了@ToString注解功能,实现了toString()方法。