1. Lombok 框架
1.1. Lombok 是什么
官方介绍如下:
Project Lombok makes java a spicier language by adding 'handlers' that know how to build and compile simple, boilerplate-free, not-quite-java code.
大致的意思就是增加一些处理程序,使得java代码变得简洁。
总结:Lombok是一个JavaBean编写的辅助型框架。使用Lombok,可以让IDE编写JavaBean不需要生成 Get、Set方法,Lombok会根据我们配置的注解在字节码中生成。
1.2. Lombok 的作用是什么
在开发中不用生成一堆 Get、Set方法。使用几个简单的注解就完成对应Get、Set方法生成以及对构造方法、toString方法、equeal 方法的重写。
1.3. IDEA 下使用
Lombok框架必须要在IDE中安装Lombok插件才可以使用。
第一步:安装 Lombok 插件
--安装步骤
[1] 进入到 File > Settings > Plugins
[2] 点击 Marketplace
[3] 搜索 Lombok
[4] 点击 Install
![0ab575c245a47cc16292e1cf5eff4a19.png](https://i-blog.csdnimg.cn/blog_migrate/f4d3059339408994b290bc313e7f9665.jpeg)
第二步:导入Lombok依赖
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.8</version>
<scope>provided</scope>
</dependency>
第三步:编写测试代码
--POJO
@Getter
--测试代码
@Test
--测试结果
![0a4735996d172440275b2a56a8d927eb.png](https://i-blog.csdnimg.cn/blog_migrate/3e259e98355cd4e4d25ce291bdfe9597.png)
发现确实可以不用编写get、set方法,只需在类上标注@Getter、@Setter注解即可。
1.4. 常用注解
![fec91774d22440782f253ff86924b2e5.png](https://i-blog.csdnimg.cn/blog_migrate/76f7b353134f6bfdd68500c0a849e4d8.jpeg)
注意:所有注解的保留期都在源代码,一经编译就不复存在了。
1.5. Lombok运行原理
Lombok的注解保留期都是源代码,意味着,当POJO一经编译,所有Lombok注解都不存在了,Lombok本质上是一个实现了“JSR 269 API”的程序,而在javac的过程中,会首先调用实现“JSR 269 API”的程序,最后才是使用javac编译源程序,这就实现了动态修改源代码。执行大致流程如下:
![002019433684b00cc482db686b53c57f.png](https://i-blog.csdnimg.cn/blog_migrate/303318c65c54380b854d15ad3701ba49.png)
1.6. Lombok的优缺点
--优点:
[1] 提高开发效率,使用注解即可为POJO添加get、set方法、构造器、toString、equals、hashCode方法、非空判断、关闭资源等等。
[2] 使得POJO代码更加简洁。
[3] 属性修改时,无需修护对应的get、set方法。
--缺点:
[1] 大大降低了代码的可读性和完整性。
[2] 大大降低了代码的纯洁度。
[3] 对于不熟悉Lombok的开发人员,开发和修护造成一定的障碍。