浅学lombok
LomBok可以通过注解,帮助开发人员消除JAVA中尤其是POJO类中 的冗长代码。
环境介绍
技术栈 |
springboot+mybatis-plus+mysql |
软件 |
版本 |
8 |
|
IDEA |
IntelliJ IDEA 2022.2.1 |
JDK |
1.8 |
Spring Boot |
2.7.13 |
mybatis-plus |
3.5.3.2 |
Lombok是一个开源的代码生成库,能以简单的注解形式来简化Java类中的大量样板代码,提高开发人员的开发效率。例如开发中经常需要写的javabean,都需要花时间去添加相应的getter/setter,也许还要去写构造器、equals等方法,而且需要维护,当属性多时会出现大量的getter/setter方法,这些显得很冗长也没有太多技术含量。
lombok能通过注解的方式,在编译时自动为属性生成构造器、getter/setter、hashcode、toString等方法,使代码看起来更简洁。
pom.xml手动加入依赖
SpringBoot项目Lombok的加入依赖
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
普通maven项目Lombok加入依赖
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.28</version>
</dependency>
或创建项目时加入依赖
IDEA安装lombok插件
IDEA版本在2020.3以上,不需要安装Lombok插件。如果IDEA 版本在2020.3以下,需要安装Lombok插件
File-->Settings
设置页面中的Plugins-->输入lombok,可以查询-->Lombok Plugin,-->Lombok Plugin-->Install按钮
lombok常用注解说明
@Setter 注解在类或属性,注解在类时为所有属性生成setter方法,注解在属性上时只为该属性生成setter方法
@Getter 使用方法同@Setter,区别在于生成的是getter方法
@ToString 注解在类,添加toString方法
@EqualsAndHashCode 注解在类,生成hashCode和equals方法
@NoArgsConstructor 注解在类,生成无参的构造方法
@RequiredArgsConstructor 注解在类,为类中需要特殊处理的属性生成构造方法,比如final和被@NonNull注解的属性
@AllArgsConstructor 注解在类,生成包含类中所有属性的构造方法
@Data 注解在类,生成setter/getter、equals、canEqual、hashCode、toString方法,如为final属性,则不会为该属性生成setter方法
@Slf4j 注解在类,生成log变量,用于记录日志
@Builder 将类转变为建造者模式
案例
实体类
@Data
public class Host {
//@Value("${host01.host}")
private String host;
//@Value("${host01.port}")
private String port;
//@Value("${host01.user}")
private String user;
//@Value("${host01.password}")
private String password;
}
使用@Data的效果
使用@AllArgsConstructor@EqualsAndHashCode生成hashCode和equals方法和生成包含类中所有属性的构造方法,效果
- 点赞
- 收藏
- 关注作者
评论(0)