[Lombok] 생성자와 관련된 어노테이션

younk·2023년 10월 30일
0

스프링부트

목록 보기
10/10

생성자 관련 어노테이션

Lombok에서 제공하는 생성자 어노테이션은 3가지가 있다.

@NoArgsConstructor

아무 인자가 없는 생성자를 생성해준다.

@RequiredArgsConstructor

꼭 필요한 변수만 인자로 받아 생성자를 구현한다. 꼭 필요한 변수를 결정짓는 것은 final 혹은 @NotNull 어노테이션이다. 이렇게 필수적으로 정의되어야하는 변수를 인자로 받아 객체를 생성한다. 이때 @NotNull은 롬복이 아닌 다른 라이브러리의 것으로 사용하면 필수 변수로 인식되지 않는다.

@AllArgsConstructor

해당 객체에 있는 모든 변수들을 인수로 받는 생성자를 만든다. 이때 NotNull을 지정한 변수는 null인지 체크도 한다. 하지만 이 어노테이션으로 생성자를 만들땐 정적 팩토리메소드를 사용하는것이 가독성이 좋을때가 많기 때문에, 사용 전에 고려를 해봐야한다.

0개의 댓글