Могу ли я добавить конструктор при использовании шаблона @Builder?

#java #spring-boot #constructor #builder #lombok

#java #весенняя загрузка #конструктор #Конструктор #ломбок

Вопрос:

Я делаю проект Spring Boot, и в моем классе домена я хочу использовать аннотацию @Builder из Lombok. Мне также нужен конструктор без параметров для работы с моей couchbase.

Когда я добавил указанный конструктор, я получил ошибку;

 java: constructor Room in class com.trendyol.hotel.domain.Room cannot be applied to given types;required: no argumentsfound:java.lang.String,java.lang.String,int,int,int,double,java.lang.String,double,java.util.List<java.util.Date>reason: actual and formal argument lists differ in length
  

Указанные аргументы являются моими полями в классе.
Я заполняю поля значениями по умолчанию (для couchbase)

Мне интересно, есть ли способ использовать @Builder, а также иметь конструктор?

Вот мой класс:

 @Getter
@Setter
@Builder
public class Room {

@NonNull
private String id;
@NonNull
private String hotelId;
@NonNull
private int roomNumber;
private int floor;
private int noOfBeds;
private double m2;
private String view;
private double nightlyPrice;
private List<Date> bookedDates;


public Room() {
    this.id = UUID.randomUUID().toString();
    this.hotelId = "hotelId";
    this.roomNumber = 0;
    this.floor = 0;
    this.noOfBeds = 1;
    this.m2 = 10;
    this.view = "default view";
    this.nightlyPrice = 0;
    this.bookedDates = new ArrayList<Date>();
} }
  

Комментарии:

1. Не могли бы вы показать какой-нибудь код? Используете ли вы, например, @NoArgsConstructor аннотацию?

2. @Builder @Data @NoArgsConstructor @AllArgsConstructor все должно работать вместе… добавьте все 4 аннотации в класс и посмотрите, продолжает ли накапливаться ошибка, также я знаю, что в старой версии lombok порядок аннотаций имеет значение, попробуйте @builder сначала поместить аннотацию

3. привет, я добавил код своего класса