本节大纲
使用lombok插件的好处
如何安装lombok插件
使用lombok提高开发效率
二、使用lombok插件的好处
我们在java开发过程中,经常会有一些常规性的,重复性的工作。比如:
根据成员变量生成get和set方法
根据成员变量生成类的构造函数
重写toString()和hashCode方法
引入日志框架logFactory,用来打印日志
以上都是一些重复动作,模板代码。每次都手动生成既浪费时间,又增加了大量的冗余代码。我们可以使用lombok插件来解决这个问题。使我们的编码效率得到大幅度的提高!
三、如何安装lombok插件
笔者以InelliJ IDEA为例,安装lombok插件。打开 IDEA 的 File->Settings 面板,并选择 Plugins 选项,然后点击 “Browse repositories”。在搜索框输入”lombok”,结果中找到lombok点击install,然后重启 IDEA。
我们还要在pom.xml里面加上如下依赖,插件生效。
<code class="language-plaintext hljs"><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency></code>
在Spring Boot项目里面不需要加入版本号,spring Boot父项目会代为管理。如果是其他项目,请自行添加版本号!
四、 使用lombok注解简化开发
4.1 Data注解
在java类上使用@Data注解,将为我们在编译期自动生成
成员变量的get和set方法
equals方法
canEqual方法
hashCode方法
toString方法
上图左侧是使用lombok注解Data,右侧是java字节码class文件反编译结果
4.2 Slf4j注解
将在编译期自动帮我们引入Logger日志常量,我们在代码中就直接使用log.info或log.debug打印日志即可。下图中红色代码就用Slf4j注解代替就可以了。
4.3 Builder注解
在Java类上使用Builder注解之后,我们可以使用如下代码为对象属性赋值
<code class="language-plaintext hljs">LombokPOJO lombokPOJO = LombokPOJO.builder().name("kobe").age(39).build();</code>
4.4 AllArgsConstructor注解
AllArgsConstructor注解将为我们在编译期自动生成:全参构造函数。
有全参构造函数注解,自然就有无参构造函数注解:NoArgsConstructor注解。
lombok有非常多的好用的注解,这里给大家集中介绍几个经常会用到的。更多的用法参考github(插件安装图中,有github连接,上图中黄色区