欢迎来到DIVCSS5查找CSS资料与学习DIV CSS布局技术!
简单的说,Lombok就是给你的主力机配上僚机,简化代码开发,把Java变得更像Kotlin或者Scala那种改进的JVM语言。有了Lombok可以省略掉很多像Getter、Setter重复的代码,更专注于业务上的开发,利于维护。
 
Lombok的官网Project Lombok
 
Lombok的原理大致看了下,是在编译生成AST之后,根据注解对AST进行修改,比如增加上Getter、Setter方法,然后用修改后的AST生成字节码。
 
工欲善其事必先利其器,先给IDEA装上Lombok的插件
 
要知道的是Lombok跟普通注解不同的是,它实际运行在了代码编译之后,而一般的自定义注解都是实际运行在运行时——一般通过反射获取到注解的内容,然后继续。
 
所以还要配置一下,把Enable annotation processing选中
 
配置完成后,可以加入Lombok的依赖了,以Maven为例
 
<dependency>
 
    <groupId>org.projectlombok</groupId>
 
    <artifactId>lombok</artifactId>
 
    <optional>true</optional>
 
</dependency>
 
顺便说一下,为了追求更快的依赖下载速度,可以把镜像配置为国内的服务器地址,比如我就配置为阿里云的镜像地址
 
<?xml version="1.0" encoding="UTF-8"?>
 
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
 
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 ">
 
    <mirrors>
 
        <mirror>
 
            <id>alimaven</id>
 
            <name>aliyun maven</name>
 
            <url>http://maven.aliyun.com/nexus/content/groups/public</url>
 
            <mirrorOf>central</mirrorOf>
 
        </mirror>
 
    </mirrors>
 
</settings>
 
以一个最简单的POJO为例
 
@Data
 
@AllArgsConstructor
 
@NoArgsConstructor
 
public class User {
 
    private long id;
 
    private String name;
 
    private int age;
 
}
 
加上了这几个注解后,生成的实际User为
 
可以看到自动帮助生成了两个构造函数和一系列Getter、Setter方法。
 
看看Lombok支持的稳定特性

如需转载,请注明文章出处和来源网址:http://www.divcss5.com/html/h64072.shtml