롬복은 자바 언어를 위한 라이브러리로, 자바 개발자들이 코드를 작성하고 유지보수하는 과정에서 흔히 반복되는 보일러플레이트 코드(boilerplate code)를 줄여주는 역할을 합니다. 롬복을 사용하면 간결하고 가독성이 높은 코드를 작성할 수 있으며, 자바의 문법적인 제약사항을 극복할 수 있습니다.
주요 기능
롬복의 주요 기능은 다음과 같습니다.
-
@Getter / @Setter: 클래스의 필드에 대해 게터(Getter)와 세터(Setter) 메서드를 자동으로 생성하여 코드 중복을 줄여줍니다.
-
@ToString: 클래스의 필드들을 포함한 문자열을 리턴하는
toString()
메서드를 자동으로 생성합니다. -
@EqualsAndHashCode: equals()와 hashCode() 메서드를 자동으로 생성하여 객체의 동등성 비교를 간편하게 할 수 있습니다.
-
@NoArgsConstructor, @RequiredArgsConstructor, @AllArgsConstructor: 인자가 없는 생성자, 필수 인자만을 받는 생성자, 모든 인자를 받는 생성자를 간편하게 생성할 수 있습니다.
-
@Builder: 불변 객체를 생성하기 위한 빌더 패턴을 자동으로 생성합니다.
롬복 사용 방법
롬복을 사용하기 위해서는 빌드 도구에 롬복 의존성을 추가해야 합니다. 대표적인 빌드 도구인 Maven과 Gradle에서는 각각 다음과 같이 의존성을 추가할 수 있습니다.
Maven
<dependencies>
<!-- 롬복 의존성 추가 -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.20</version>
<scope>provided</scope>
</dependency>
</dependencies>
Gradle
dependencies {
// 롬복 의존성 추가
implementation 'org.projectlombok:lombok:1.18.20'
}
롬복을 의존성으로 추가한 후에는 자바 클래스에 롬복 어노테이션을 사용하여 필요한 기능들을 자동으로 생성할 수 있습니다.
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
@Getter
@Setter
@ToString
public class Person {
private String name;
private int age;
}
위와 같이 @Getter
, @Setter
, @ToString
어노테이션을 사용하면 name
, age
필드에 대한 게터, 세터, toString()
메서드가 자동으로 생성됩니다.
롬복을 사용하면 개발자는 반복적인 코드 작성에 시간을 절약하고, 더 읽기 쉽고 간결한 코드를 작성할 수 있습니다.