반복되는 코드의 작성을 도와주는 라이브러리 Lombok

경성구·2022년 3월 27일
0

Spring

목록 보기
2/19

    Lombok 이란?

  • 반복되는 메소드를 Annotation을 사용하여 자동으로 작성해주는 라이브러리
  • 일반적으로 VO,DTO,Model,Entity 등의 데이터 클래스에서 주로 사용됨

  • 대표적으로 많이 사용되는 Annotation

  • @Getter : 해당 클래스에 선언되어 있는 필드를 기반으로 'getField','setField' 와 같은 식으로 자동으로 메소드를 생성
  • @Setter : 해당 클래스에 선언되어 있는 필드를 기반으로 'getField','setField' 와 같은 식으로 자동으로 메소드를 생성
  • @NoArgConstructor : 파라미터가 없는 생성자를 생성
  • @AllArgConstructor : 모든 필드값을 파라미터로 갖는 생성자를 생성
  • @RequiredArgsConstructor: 필드값 중 final 이나 @NotNull인 값을 갖는 생성자를 생성
  • @Data : 해당 어노테이션을 사요하면 ,앞서 나온 기능들을 한번에 추가해줌(@Getter,@Setter,@RequiredArgsConstructor,@ToString,EqualsAndHashCode)
  • @ToString : toStirng 메소드를 자동으로 생성해주는 기능
    @ToString 어노테이션에 exclude 속성을 사용하여 특정 필드를 toString에서 제외시킬 수 있음
  • @EqualsAndHashCode
    equlas,hashcode 메소드를 자동으로 생성
    equals:두 객체의 내용이 같은지 동등성(equality)를 비교하는 연산자
    hashcode:두 객체가 같은 객체인지 동일성(identity)를 비교하는 연산자
  • callSuper 속성을 통해 메소드 생성시 부모 클래스의 필드까지 고려할지 여부 설정 가능
    -callSuper = true -> 부모클래스 필드 값들도 동일한지 체크
    참고 < https://thinkground.studio/>
profile
코딩배우기!

0개의 댓글

관련 채용 정보