关于java lombok @Accessors注解

@Accessors有三个属性:fluent,chain,prefix

  • fluent
    如果为true,存取器会省略get 和 set,并返回实体类。例:
@Data
@Accessors(fluent = true)
public class Menu {

    private String id;

    private String name;

    private int sort;

    public static void main(String[] args) {
        //getters
        Menu menu = new Menu().id("1").name("test").sort(0);
        System.out.println(menu);
        //Menu(id=1, name=test, sort=0)
        
        //setters
        String name = new Menu().name();
    }
}
  • chain
    如果为true,setters会返回实体类。例:
@Accessors(chain = true)
//setters
new Menu().setId("1").setName("test").setSort(0);
  • prefix
    getter/setter 将会省去传入的前缀,只限于驼峰命名。适合给自己的实体类加统一前缀的老哥。例:
@Data
@Accessors(prefix = {"pre", "pre1"})
public class Menu {

    private String preId;

    private String pre1Name;

    private String preName;

    private int preSort;

    public Menu(String preId, String pre1Name, String preName, int preSort) {
        this.preId = preId;
        this.pre1Name = pre1Name;
        this.preName = preName;
        this.preSort = preSort;
    }

    public static void main(String[] args) {
        Menu m = new Menu();
        //setters
        m.setId("1");
        m.setName("123");
        m.setSort(0);
        System.out.println(m);
        
        //getters
        m.getId();
        m.getSort();
    }
}

注意如果有多个字段,前缀去掉后,字段名相同,如上面的preName 和 pre1Name,setter时会报错,慎用。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值