@Accessors 注解用来使用lombok时如何产生和显示getters和setters的方法。
@Accessors有三个属性,分别是fluent、chain、prefix,@Accessors注解既可以注解在类上也可以注解在属性上
1.fluent
fluent为一个布尔值,如果为true生成的get/set方法则没有set/get前缀,默认为false
例如:
@Data
@Accessors(fluent = true)
public class Student {
private long id;
private String name;
public Long id() {}
public Student id(long id) { this.id=id }
public String name() {}
public Student name(String name) { this.name=name }
}
2.chain
chain为一个布尔值,如果为true生成的set方法返回this,为false生成的set方法是void类型。默认为false,除非当fluent为true时,chain默认则为true
@Data
@Accessors(chain = true)
public class Student {
private long id;
private String name;
public Student setId(long id) { this.id=id; }
public Student setName(String name) { this.name=name; }
}
3.prefix
prefix为一系列string类型,可以指定前缀,生成get/set方法时会去掉指定的前缀
例如:
忽视前缀 p
@Data
@Accessors(prefix = "p")
class Student {
private long pId;
private String pName;
public long getId() {}
public void setId(long id) { this.id=id; }
public String getName() {}
public void setName(String name) { this.name=name }
}