Lombok是一个用于简化接口对象代码的工具,针对接口对象中的样板代码进行简化。下面看两段代码来体会一下,假设现在有一个接口对象,以项目(Store
)举例:
- 不使用Lombok
public class Store implements IsEntity {
private String uuid;
private String code;
private String name;
private UsingState state;
private String remark;
@Override
public String getUuid() {
return uuid;
}
@Override
public void setUuid(String uuid) {
this.uuid = uuid;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public UsingState getState() {
return state;
}
public void setState(UsingState state) {
this.state = state;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
}
- 使用Lombok
一个@Data
注解搞定getter
、setter
方法,多简洁。
@Data
public class Store implements IsEntity {
private String uuid;
private String code;
private String name;
private UsingState state;
private String remark;
}
1. 集成Lombok
其实要集成Lombok很简单,只需要引入lombok依赖即可:
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
1.1 添加IDE工具对Lombok的支持
为了让Lombok注解在编译阶段起到作用,我们需要下载Lombo的插件:
2. 常见注解
@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方法即可;
哎,使用Lombok实在太简单了,都不知道写啥,就先这样吧。
网友评论