Lombok
1、什么是Lombok?
Lombok项目是一个Java库,它会自动插入编辑器和构建工具中,Lombok提供了一组有用的注释,用来消除Java类中的大量样板代码。仅五个字符(@Data)就可以替换数百行代码从而产生干净,简洁且易于维护的Java类。
2、有什么注解?
@Getter and @Setter get/set
@FieldNameConstants 字段 属性 常量
@ToString
@EqualsAndHashCode
@AllArgsConstructor, @RequiredArgsConstructor and 有参构造@NoArgsConstructor 无参构造
@Log, @Log4j, @Log4j2, @Slf4j, @XSlf4j, @CommonsLog, @JBossLog, @Flogger, @CustomLog
@Data
@Builder
@SuperBuilder
@Singular
@Delegate
@Value
@Accessors
@Wither
@With
@SneakyThrows
@val
@var
experimental @var
@UtilityClass
Lombok config system
3、有什么作用
@Data注解:在JavaBean中使用,这个注解包含范围最广,它包含getter、setter注解,即当使用当前注解时,会自动生成包含的所有方法;
@builder注解:在JavaBean中使用,使用此注解可通过builder方式初始化对象
@getter注解:在JavaBean中使用,使用此注解会生成对应的getter方法;
@setter注解:在JavaBean中使用,使用此注解会生成对应的setter方法;
@NoArgsConstructor注解:在JJavaBean中使用,使用此注解会生成对应的无参构造方法;
@AllArgsConstructor注解:在JJavaBean中使用,使用此注解会生成对应的有参构造方法;
@ToString注解:在JJavaBean中使用,使用此注解会自动重写对应的toStirng方法;
@EqualsAndHashCode注解:在JavaBean中使用,使用此注解会自动重写对应的equals方法和hashCode方法;
@Slf4j:在需要打印日志的类中使用,当项目中使用了slf4j打印日志框架时使用该注解,会简化日志的打印流程,只需调用info方法即可;
@Log4j:在需要打印日志的类中使用,当项目中使用了log4j打印日志框架时使用该注解,会简化日志的打印流程,只需调用info方法即可;
4、怎么使用步骤
-
在idea中安装Lombok
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AS7KaVM5-1604822569116)(Lombok.assets/image-20201108153142150.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-D67UDtxo-1604822569118)(Lombok.assets/image-20201108153215894.png)]
在maven pom.xml中导包
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.12</version>
</dependency>
在实体类中使用
package com.lhh.pojo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {
private int id;
private String name;
private String password;
}
ss User {
private int id;
private String name;
private String password;
}