1.lombok依赖:
org.projectlombok
lombok
1.16.10
2.lombok的用法介绍:
@Getter/@Setter:注解在类和属性上:为类内属性自动生成get、set方法;
@Data:注解在类上,为该类生成get、set、toString、equals、hashcode方法,若为final则不生成;
@NonNull:该注解用在属性或构造器上,Lombok会生成一个非空的声明,可用于校验参数,能帮助避免空指针;
@NoArgsConstructor:生成无参构造;
@AllArgsConstructor:有参构造;
3.Accessors存取器。通过该注解可以控制getter和setter方法的形式。
1>fluent 若为true,则getter和setter方法的方法名都是属性名,且setter方法返回当前对象。
@Accessors(fluent = true)
class User {
private Integer id;
private String name;
// 生成的getter和setter方法如下,方法体略
public Integer id(){}
public User id(Integer id){}
public String name(){}
public User name(String name){}
}
2>chain 若为true,则setter方法返回当前对象
@Data
@Accessors(chain = true)
class User {
private Integer id;
private String name;
// 生成的setter方法如下,方法体略
public User setId(Integer id){}
public User setName(String name){}
}
3>prefix 若为true,则getter和setter方法会忽视属性名的指定前缀(遵守驼峰命名)
复制代码
@Data
@Accessors(prefix = “f”)
class User {
private Integer fId;
private String fName;
// 生成的getter和setter方法如下,方法体略
public Integer id(){}
public void id(Integer id){}
public String name(){}
public void name(String name){}
}