Lombok은 자바 개발에서 반복적인 코드를 줄여주는 라이브러리이다. 주로 Spring Framework와 함께 많이 사용되며, 어노테이션을 통해 자주 사용하는 코드(예: getter, setter, toString, equals, hashCode, 생성자 등)를 자동으로 생성해 준다. 이렇게 하면 코드를 더 간결하게 유지하면서 생산성을 높일 수 있다.
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class User {
private String name;
private int age;
}
위 코드는
getName(),setName(),getAge(),setAge()메서드를 자동으로 생성한다.
import lombok.ToString;
@ToString
public class User {
private String name;
private int age;
}
출력 예시:
User(name=John, age=25)
@NoArgsConstructor: 매개변수가 없는 기본 생성자 생성@AllArgsConstructor: 모든 필드를 매개변수로 받는 생성자 생성@RequiredArgsConstructor: final이나 NonNull이 붙은 필드만 초기화하는 생성자 생성import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;
@NoArgsConstructor
@AllArgsConstructor
public class User {
private String name;
private int age;
}
@Getter, @Setter, @ToString, @EqualsAndHashCode, @RequiredArgsConstructor가 포함된 종합 어노테이션이다.import lombok.data;
@Data
public class User {
private String name;
private int age;
}
대부분의 일반적인 메서드가 자동으로 생성되므로 간편하게 사용할 수 있다.
import lombok.Builder;
@Builder
public class User {
private String name;
private int age;
}
사용 예시:
User user = User.builder() .name("John") .age(25) .build();
log.info(), log.debug() 등을 사용할 수 있게 한다.import lombok.extern.slf4j.Slf4j;
@Slf4j
public class LoggerExample {
public void doSomething() {
log.info("Logging example with Lombok!");
}
}