728x90
반응형
SMALL
자바, 스프링 개발자라면 필수 아이템처럼 사용하는 lombok에 대해서 포스팅 하겠습니다.
Lombok (Project Lombok)이란?
- Java의 라이브러리로써 반복되는 메서드를 Annotation을 사용해서 자동으로 작성해주는 라이브러리다.
Spring Boot 에서 Lombok 사용하기
Spring Boot 에서 사용하려면 build.gradle에 의존성을 추가하면 됩니다.
annotationProcessor 'org.projectlombok:lombok'
이제 Lombok의 주요 어노테이션을 알아보겠습니다.
Lombok Annotation
- @Getter : 게터 메서드를 자동으로 생성합니다.
- @Setter : 세터 메서드를 자동으로 생성합니다.
- @ToString : toString() 메서드를 자동으로 생성하여 객체의 문자열 표현을 반환합니다.
- @EqualsAndHashCode : equals(), hashCode() 메서드를 자동으로 생성하여 객체의 동등성 및 해시 코드 비교를 수행합니다.
- @RequiredArgsConstructor : final이 붙거나 @NotNull이 붙은 필드의 생성자를 자동 생성해줍니다. 주로 의존성 주입에 사용합니다.
- @Data : @Getter, @EqualsAndHashCode, @ToString, @RequiredargsConstructor 어노테이션을 한번에 적용한 것으로 데이터 객체를 생성 및 관리하기 쉬워집니다.
- @AllArgsConstructor : 클래스에 적용하면 모든 필드를 매개변수로 사용하는 생성자를 자동으로 생성합니다.
- @NoArgsConstructor : 클래스에 적용하면 매개 변수 없는 생성자를 자동으로 생성합니다.
- @Builder : 클래스에 적용하면 빌더 패턴을 자동으로 생성하여 객체를 구성하기 쉽게 만듭니다. 이는 선택적으로 필드를 설정할 수 있는 유연한 객체 생성을 지원합니다.
- @NotNull : 메서드나 생성자 매개 변수에 적용하면 null check를 합니다.
- @Slf4j : 클래스에 적용하면 SLF4J(간단한 로깅 퍼사드)로깅을 설정합니다. 로깅메서드를 자동으로 생성하여 로그 출력을 단순화합니다.
728x90
반응형
LIST
'Study' 카테고리의 다른 글
프로세스(Process)와 스레드(Thread) (0) | 2023.10.20 |
---|---|
[DB] RDBMS vs NoSQL (0) | 2023.10.18 |
[Java] 객체 지향 프로그래밍(Object-Oriented Programming, OOP) - 다형성 (4) (0) | 2023.10.17 |
[Java] 객체 지향 프로그래밍(Object-Oriented Programming, OOP) - 캡슐화 (3) (0) | 2023.10.16 |
[Java] 객체 지향 프로그래밍(Object-Oriented Programming, OOP) - 상속 (2) (0) | 2023.10.16 |