1、lombok介绍及优点:
通过简单注解来精简代码达到消除冗长代码的目的它的优点是:
提高编码的效率、使代码更加简洁、消除冗长的代码、避免修改字段名字时忘记修改方法名(这句话的意思是打个比方:当一个类中有一个属性,name当我把它改变成userName时候,它的get或者set方法会报错因为属性的名字改变了这个时候lombok就能避免这种情况发生)。
2、lombok的原理:
(2-1)遵循jsr 269 api规范(JSR是Java Specification Requests的缩写,意思是Java 规范提案。是指向JCP(Java Community Process)提出新增一个标准化技术规范的正式请求。任何人都可以提交JSR,以向Java平台增添新的API和服务。JSR已成为Java界的一个重要标准)只要程序实现了该api就能在javac运行的时候得到调用。
(2-2)javac编译的流程如下:首先javac编译.java文件生成一个抽象语法树(AST)然后会调用annotation processing在这个annotation processing的过程中调用lombok processer这个lombok processer会对上面的抽象语法树(AST)进行处理生成lombok processer handler然后这个lombok processer handler会找到抽象语法树(AST)中的注解比如(@data注解生成对应的getter和setter方法)然后输出一个修改过的抽象语法树(AST)这里面修改并且增加了getter和setter方法的树节点然后我们拿到这个新的语法树进行解析和生成字节码文件。
3、lombok的项目引入:
通过maven引入即可可以搜索maven的中央仓库的依赖配置。
4、idea安装lombok插件:
在idea中装lombok插件(插件的安装步骤就不用说了相信都懂)。
5、反编译大法:
这个我个人认为跟android的反编译原理大致相同反编译jar包jdjui即可。
6、lombok验证:
装了插件重启idea
7、lombok工作中需要注意的点:
json序列化的时候要注意比如值为null的可以不显示可能会有一些坑。
代码的可读性问题这个是小问题看个人习惯。