롬복(Lombok)

하쮸·2024년 11월 22일
post-thumbnail

1. 롬복(Lombok)

  • 롬복(Lombok)이란
    • 코드를 간소화해 주는 라이브러리
    • 로깅(logging)을 통해 코드를 리팩터링(Refactoring)할 수 있음.
      • 로깅(logging) : 프로그램의 수행 과정을 기록으로 남기는 것.
      • 리팩터링(Refactoring) : 코드의 기능에는 변함이 없지만 코드의 구조, 성능을 개선시킴.
      • 또한 println()을 개선시킬 수 있음.
    • Ex
      • @Data
        • @Getter, @Setter, @ToString, @EqualsAndHashCode, @RequiredArgsConstructor 포함되어 있음.
      • @Slf4j
        • 로깅(logging)을 지원.

1-1. build.gradle 추가.

  • 롬복(lombok)을 사용하려면 build.gradle -> dependencies
    compileOnly 'org.projectlombok:lombok'
     annotationProcessor 'org.projectlombok:lombok'
    • 위의 코드 두 줄을 추가하고 우측 상단 코끼리 모양(load Gradle Changes) 아이콘을 클릭하면 됨.
      • 그러면 자동으로 롬복 관련 라이브러리를 다운로드 함.

1-2. @AllArgsConstructor

  • 클래스 안쪽의 모든 필드를 매개변수로 하는 생성자가 자동으로 만들어짐.
@AllArgsConstructor
public class ArticleForm {
    private String title;
    private String content;

//    public ArticleForm(String title, String content) {
//        this.title = title;
//        this.content = content;
//    }
}
  • 클래스가 이렇게 구성되어 있을 경우 주석 처리한 코드를 @AllArgsConstructor이 대체해줌.

1-3. @ToString

  • toString() 메서드를 대체해줌.
@ToString
public class ArticleForm {
	
    // 코드 생략

//    @Override
//    public String toString() {
//        return "ArticleForm{" +
//                "title='" + title + '\'' +
//                ", " +
//                "content='" + content + '\'' +
//                '}';
//    }
}
  • 주석 처리한 코드를 @ToString이 대체해줌.

1-4. 로그 남기기. (@Slf4j)

  • 흔히 println()으로 확인하고 싶은 데이터를 출력하는데 실제 서버에서는 절대 이렇게 하면 안됨.
    • println()으로 데이터를 검증하면 기록에도 안 남고 서버의 성능에도 악영향을 줌.
    • 이럴때 로깅을 사용하면 됨.
      • 로깅을 사용하면 서버에서 일어나는 모든 일들을 기록할 수 있음.
  • @Slf4j(Simple Logging Facade for Java)
    • 해당 어노테이션을 쓰면 로깅 기능을 사용할 수 있음.
    • log.info();형태로 사용함.
      • ()안에 출력하고 싶은 데이터를 넣음.

1-5. @NoArgsConstructor

  • @NoArgsConstructor : 기본 생성자를 추가해주는 어노테이션
profile
Every cloud has a silver lining.

0개의 댓글