Accessors翻譯是存取器。通過該注解可以控制getter和setter方法的形式。
特別注意如果不是常規的get|set,如使用此類配置(chain = true或者chain = true)。在用一些擴展工具會有問題,比如
BeanUtils.populate
將map轉換為bean的時候無法使用。具體問題可以查看轉換源碼分析
@Accessors(fluent = true)
使用fluent屬性,getter和setter方法的方法名都是屬性名,且setter方法返回當前對象
class Demo{
private String id;
private Demo id(String id){...} //set
private String id(){} //get
}
@Accessors(chain = true)
使用chain屬性,setter方法返回當前對象
class Demo{
private String id;
private Demo setId(String id){...} //set
private String id(){} //get
}
@Accessors(prefix = "f")
使用prefix屬性,getter和setter方法會忽視屬性名的指定前綴(遵守駝峰命名)
class Demo{
private String fid;
private void id(String id){...} //set
private String id(){} //get
}