Spring 06 Lombok 어노테이션(중요)❗

Kang.__.Mingu·2024년 9월 7일

Spring

목록 보기
5/21

Lombok-Maven

Lombok 라이브러리

  • 클래스 작성시 생성자 또는 메소드를 자동으로 생성하는 기능을 제공하기 위한 라이브러리

@NoArgsConstructor

  • 매개변수가 없는 기본 생성자를 제공하기 위한 어노테이션

  • final 제한자를 사용한 필드를 작성한 경우 @NoArgsConstructor 어노테이션를 사용하면 에러 발생

@AllArgsConstructor

  • 모든 필드를 초기화 처리하기 위한 매개변수가 작성된 생성자를 제공하기 위한 어노테이션

@RequiredArgsConstructor

  • final 제한자를 사용한 필드만 초기화 처리하기 위한 매개변수가 작성된 생성자를 제공하기 위한 어노테이션

@Setter

  • 클래스에 작성된 모든 필드에 대한 Setter 메소드를 제공하기 위한 어노테이션

  • 필드에 @Setter 어노테이션을 사용하면 해당 필드에 대한 Setter 메소드 제공

@Getter

  • 클래스에 작성된 모든 필드에 대한 Getter 메소드를 제공하기 위한 어노테이션

  • 필드에 @Getter 어노테이션을 사용하면 해당 필드에 대한 Getter 메소드 제공

@ToString

  • 클래스에 toString() 메소드를 오버라이드 선언하기 위한 어노테이션

  • 클래스에 작성된 모든 필드값을 결합해 문자열로 반환하는 기능 제공 - 필드값 확인

@Data

  • 클래스에 Setter 메소드, Getter 메소드, toString() 메소드, equals() 메소드, hashCode() 메소드를 제공하기 위한 어노테이션

  • VO 클래스(객체를 값처리 비교할 수 있도록 작성된 클래스)를 선언할 때 사용

@Builder

  • 클래스에 Builder 클래스와 builder() 메소드를 제공하기 위한 어노테이션

  • Builder 클래스: 객체 생성시 객체 필드에 필요한 값을 저장하기 위한 메소드를 제공하는 클래스

  • Builder 클래스의 메소드를 호출하여 객체 필드의 필요한 값이 저장되도록 설정

  • 원하는 필드만 초기화 처리할 수 있어 생성자보다 가독성이 좋고, 필드 순서와 상관없이 초기화 처리할 수 있으므로 객체 생성 편리
    => 주로 테스트 프로그램 작성시 사용된다.

@Slf4j

  • 로그 이벤트를 발생할 수 있는 Logger 객체가 저장된 log 필드를 제공하기 위한 어노테이션
profile
최선을 다해 꾸준히 노력하는 개발자 망고입니당 :D

0개의 댓글