Исключить поля из конструктора lombok
Как исключить поля из конструктора lombok? Или как создать конструктор не для всех полей в классе? В моём классе используется аннотация Builder, поэтому решение с аннотацией NonNull или ключевым словом final не подходят. Помню, что когда-то использовал какую-то аннотацию с параметром exclude, но сейчас не могу её найти.
Ответы (1 шт):
Автор решения: Engenii
→ Ссылка
Видимо автор вопроса желает получить Builder из Lombok с нужными ему полями класса (не включая все поля класса). Ответ был дан Roel Spilker здесь
Использование @Builder над собственным конструктором, с необходимыми полями.
public class Cat {
private Long id;
private String name;
private String color;
@Builder
public Cat(String name, String color) {
this.name = name;
this.color = color;
}
}
Или использование @Builder над статическим методом
public class Cat {
private Long id;
private String name;
private String color;
public Cat(Long id, String name, String color) {
this.id = id;
this.name = name;
this.color = color;
}
@Builder
public static Cat buildCat(String name, String color) {
return new Cat(SomeGenerator.get(), name, color);
}
}