Lombok
정의
Lombok 이란?
Java 라이브러리 중 하나로 반복되는 코드를 Annotation을 사용하여 자동으로 생성해주는 라이브러리
장점
- Annotation 기반의 코드 자동 생성으로 생산성 향상
- 코드 가독성 향상
- 유지보수 편의성 향상
Lombok Annotation
Annotation | 대상 | 기능 |
---|---|---|
@Getter | Class, 변수 | Getter 메서드 생성 |
@Setter | Class, 변수 | Setter 메서드 생성 |
@ToString | Class | Class 필드를 기반으로 toString 메서드 생성 |
@NoArgsConstructor | Class | 기본 생성자를 생성 |
@AllArgsConstructor | Class | Class 필드를 파라미터로 받는 생성자를 생성 |
@RequiredArgsConstructor | Class | 특정 필드만을 파라미터로 받는 생성자를 생성. 생성자의 파라미터로 추가할 변수에 @NotNull 또는 final을 선언하여 의존성 주입 |
@EqualsAndHashCode | Class | equals 와 hashCode 함수 생성. callSuper(부모의 필드도 비교할지 여부) |
@Data | Class | Getter 메서드, Setter 메서드, RequiredArgsConstructor, toString, equals 모두 생성 |
@Builder | Class | 해당 Class에 Builder 패턴 적용 |
프로젝트 설정
- IDE에서 Annotation Processor 옵션을 활성화 해야 한다. Intellij
build.gradle
dependencies {
...
//lombok
compileOnly 'org.projectlombok:lombok:1.18.22'
annotationProcessor 'org.projectlombok:lombok:1.18.22'
...
}
Example
@Data
public class User {
Integer userSeq;
String id;
LocalDate registTime;
LocalDate lastLoginTime;
}
댓글남기기