Lombok介绍
Lombok:
通过简单注解来精简代码达到消除冗长代码的目的
优点:
1.提高编码效率
2.使代码更简洁
3.消除冗长代码
4.避免修改字段文字时忘记修改方法名(重点)
原理:
1.JSR 269 Pluggable Annotation Processing API
2.javac从Java6开始支持“JSR 269 API”规范
3.只要程序实现了该API,就能在javac运行的时候得到调用
Lombok引入项目
Maven引入Lombok
<dependencies>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.16</version>
<scope>provided</scope>
</dependency>
</dependencies>
Lombok实际使用需注意的点
1.在类需要序列化、反序列化时详细控制字段时,例如:Jackson json序列化
2.使用Lombok虽然能省去手动创建setter和getter方法等繁琐,但是却降低了源代码文件的可读性和完整性,
降低了阅读源代码的舒适度。
3.使用@SLF4j还是@Log4j看项目使用的日志框架,项目中使用Logback,所以使用@Slf4j
4.选择适合的地方使用Lombok,例如POJO是个好地方,POJO很单纯...
Lombok软件下载地址
http://learning.happmmall.com/
常用的几个注解:
@Data : 注在类上,提供类的get、set、equals、hashCode、canEqual、toString方法
@AllArgsConstructor : 注在类上,提供类的全参构造
@NoArgsConstructor : 注在类上,提供类的无参构造
@Setter : 注在属性上,提供 set 方法
@Getter : 注在属性上,提供 get 方法
@EqualsAndHashCode : 注在类上,提供对应的 equals 和 hashCode 方法
@Log4j/@Slf4j : 注在类上,提供对应的 Logger 对象,变量名为 log
日拱一卒无有尽,功不唐捐终入海