lombokの@Accessors

生成するsetter/getterをfluent interfaceにできる。

lombokで生成されるsetterがfluent interfaceになるように生成できる。 fluent = trueがget/setプレフィクスをなくし、 chain = trueがsetterの戻り値を自分自身にして連続してsetterをかけるようにする。

@Data
@Accessors(fluent = true, chain = true)
public class Bar {
    private int afo;
    private String bfo;
    private String cfo;

    public static void main(String[] args) {
        val bar = new Bar();

        bar.afo(1).cfo("a");

        System.out.println(bar.afo());
        System.out.println(foo.bfo());
        System.out.println(foo.cfo());
    }
}

@Getterのみな場合でも、getプレフィクスをなくせる。

@Value
@Accessors(fluent = true)
public class Foo {
    private int afo;
    private String bfo;
    private String cfo;

    public static void main(String[] args) {
        val foo = new Foo(1, "a", "a");

        System.out.println(foo.afo());
        System.out.println(foo.bfo());
        System.out.println(foo.cfo());
    }
}