本文章仅供小编学习使用,如有侵犯他人版权,请联系小编撤回或删除
前言
Lombok是一个通过注解形式帮助构造简洁、规范的Java代码的工具,通过使用对应的注解,可以在编译源码的时候生成对应的方法。
安装
在IDEA中使用它的过程
![](https://img.haomeiwen.com/i18501915/4b084653081b43f7.png)
pom.xml
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.22</version>
</dependency>
常用注解
-
@Getter and @Setter
可以用@Getter
/ @Setter
注释字段(也可以注释到类上的—(在实体类中常用且推荐)),lombok会自动生成默认的Getter
/Setter
方法。
-
@ToString
自动生成toString()方法,默认情况,按顺序(以“,”分隔)打印你的类名称以及每个字段。也可以设置不包含哪些字段/@ToString(exclude = {“id”,”name”})
@ToString(exclude = {"id","name"})
public class User {
private Integer id;
private String name;
private String phone;
}
实际生成的toString()方法
public String toString(){
return "User(phone=" + phone + ")";
}
-
@NoArgsConstructor
无参数构造函数
-
@AllArgsConstructor
全部参数构造函数
-
@RequiredArgsConstrutor
会生成一个包含常量,和标识了NotNull的变量的构造方法。生成的构造方法是私有的private,主要使用@NoArgsConstructor
和@AllArgsConstructor
两个注解,这样就不需要自己写构造方法,代码简洁规范
-
@Data
自动为所有字段添加@ToString
, @EqualsAndHashCode
, @Getter
方法,为非final字段添加@Setter
,和@RequiredArgsConstructor
-
@Accessors(chain = true)
@Data
@Accessors(chain = true)
public class User {
private String id;
private String name;
private Integer age;
}
public static void main(String[] args) {
//使用@Accessors(chain = true)
User userChain = new User();
userChain.setId("1").setName("chain").setAge(1);
网友评论