lombok的@Accessors注解使用要注意


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
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM