[ Lombok ] 어노테이션 정리

Jobmania·2022년 8월 21일
0

스프링 

목록 보기
2/5
post-thumbnail
어노테이션설명
@NonNull필드의 값이 null이 될 수 없음을 명시
@Getter필드의 get 메소드를 생성
@Getter(lazy=true)getter 최초 호출 시 값을 한번 계산한 후 그 값을 캐시해서 사용 (매번 getter를 호출하는 것이 아닌 최초 한번만 호출하여 사용하기 위해) AccessLevel 지정 가능
@Setter필드의 set 메소드를 생성, AccessLevel 지정 가능
@NoArgsConstructor파라미터가 없는 기본 생성자 생성
@RequiredArgsConstructor초기화되지 않은 final 필드, @NonNull인 필드에 대한 생성자 생성
@AllArgsConstructor모든 필드를 가진 생성자 생성
@ToStringtoString() 메소드 생성, exclude 속성을 사용하여 필요없는 속성 제거 @ToString(exclude = "value")
@EqualsAndHashCodeequals(), hashCode() 메소드 생성, exclude 속성을 사용 가능 -> 모든 필드의 값이 같다면 a.equals(b) 의 결과가 참이 된다
@Data@Getter + @Setter + @RequiredArgsConstructor + @ToString + @EqualsAndHashCode
@Value불변을 의미하는 어노테이션 , @Value가 붙은 멤버필드는 private 접근제어자와 final이 붙은 상수가 된다.(final이 붙기 때문에 setter는 존재할 수 없다.)
@LogLogger 자동 생성 기능, 자동으로 log 필드를 만들고 해당 class 명으로 로거 객체를 생성하여 할당해준다.
@BuilderBuilder 자동 생성
@Singular어노테이션 사용시 원소를 하나씩 추가할 수 있다.
profile
HelloWorld에서 RealWorld로

0개의 댓글