-
LombokBackEnd/Spring Boot 2021. 7. 9. 12:00반응형
Lombok이란 getter, setter, toString 등의 반복 메서드 작성 코드를 줄여주는 코드 다이어트 라이브러리입니다.
@어노테이션 기반으로 반복 소스코드를 컴파일 과정에서 생성해주는 방식으로 동작하기에 .class 파일에는 코드가 생성되어 있습니다.
Lombok을 Spring Boot에서 사용하기 위해서는 depency를 추가해주면 됩니다.
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency>
Lombok Installation (IntelliJ)
1) Plugin
> Setting > Plugins > Marketplace > Lombok [Install] > [Restart IDE]
2) Enable annotation processing check
> Setting > Build, Execution, Deployment > Compiler > Annotation Processors
Lombok features
Annotation Description @NonNull null을 허용하지 않는다.
(메소드나 생성자의 파라미터 null Check)@Cleanup 안전하게 close() 메소드를 호출한다. @Getter/@Setter 필드에 대한 getter, setter를 자동으로 생성한다. @ToString toString() 메소드의 구현을 생성한다. 기본적으로는 각 필드와 함께 클래스 이름을 쉼표로 구분하여 순서대로 출력한다. @NoArgsConstructor 매개변수가 없는 생성자를 생성한다. @RequiredArgsConstructor 초기화되지 않은 모든 final 필드, @NonNull 필드에 대한 생성자를 생성한다. @AllArgsConstructor 모든 필드에 대한 생성자를 생성한다. @Data 모든 필드에 대해 @ToString, @EqualsAndHashCode, @Getter를 모든 non-final 필드에 대해 @Setter를 설정하고 @RequiredArgsConstructor를 설정하는 단축 Annotation이다. @Value @Data의 변경할 수 없는 변형이다. @SneakyThrows 메소드 선언부에 사용되는 throws 키워드 대신 예외 클래스를 파라미터로 입력받는다. @Synchronized 파라미터로 입력받는 Object 단위로 Lock을 건다. 파라미터로 아무 것도 입력하지 않으면 Annotation이 사용된 메소드 단위로 락을 건다. @With @Setter의 변경할 수 없는 변형이다. @With는 객체를 생성하기 위해 생성자(@With필드명)에 의존한다. 만약 적절한 생성자가 존재하지 않으면 컴파일 오류를 발생시킨다. @Log 클래스 상단에 선언하는 static final log 필드를 자동으로 생성한다. 지원되는 Logger에 따라 다른 어노테이션을 사용한다. https://projectlombok.org/features/all
반응형'BackEnd > Spring Boot' 카테고리의 다른 글
Validation (0) 2022.04.06 Exception Handling (0) 2022.04.05 Spring Boot 설정 및 동작 원리 (0) 2022.04.05 Spring Boot (0) 2022.04.02 Swagger (0) 2021.07.23