이야기앱 세상

자바빈(도메인 클래스) 제어를 위한 Lombok 설치 및 사용법 본문

IT/Spring

자바빈(도메인 클래스) 제어를 위한 Lombok 설치 및 사용법

storya 2019. 6. 20. 09:07

SLombok 설치 및 사용법

롬복은 자바빈(도메인 클래스)에 getter, setter, toString, equals, hashCode 메서드 등을 자동으로 추가해주기 때문에 별도로 명시할 필요가 없다.
 
- 롬복 설치

Lombok를 설치하려면 사용중이 STS를 종료한다. 아래 명시한 Lombok 사이트를 방문해서 파일을 다운로드 받는다.

https://projectlombok.org/

다운로드 링크를 눌러 파일을 다운로드 받는다. 다운로드된 lombok.jar를 클릭한다.
아래 화면이 보여지고 자동으로 STS 경로를 인식해서 sts.exe 파일을 선택한다. 만약 자동으로 인식을 못 할 경우
[Specify Location] 버튼을 눌러 수동으로 STS 경로를 탐색하고 sts.exe 파일을 선택한다.

[Install / Update] 버튼을 클릭한다.


[Quit Installer]를 클릭한다. 
STS를 구동하고 사용중인 프로젝트의 pom.xml에 아래와 같이 dependency를 추가해준다.

<dependency>

    <groupId>org.projectlombok</groupId>

    <artifactId>lombok</artifactId>

    <version>1.16.16</version>

</dependency>


- 롬복 사용하기

자바빈(도메인 클래스)로 이동한다.
클래스명 위해 @Data를 추가하면 getter, setter, toString, equals, hashCode 메서드를 자동으로 추가한다.

import lombok.Data;

@Data
public class MemberCommand {
 private String id;
 private String passwd;
 private String name;
 private Date reg_date;
}

- 사용가능한 어노테이션

@Data : 모든 필드에 getter, setter를 생성하고 toString, equals, hashCode 메서드도 추가
         final로 지정된 필드가 있으면 생성자를 통해 데이터를 받을 수 있게 생성자를 생성하고
         이때 setter를 생성하지 않음
@Getter/@Setter : getter, setter를 생성할 수 있고 접근지정자를 명시할 수 있음.
                    예) @Getter(AccessLevel.PUBLIC)
@ToString : toString()를 재정의할 수 있음. 특정 필드를 제외할 수 있음
             예) @ToString(exclue={"name"})
@AllArgsConstructor : 모든 필드 값을 인자로 받는 생성자 생성, 접근지정자 명시 가능
                          예) @AllArgsConstructor(access=AccessLevel.PUBLIC)
@EqualsAndHashCode : equals, hashCode 메서드 생성, 특정 필드를 제외할 수 있음
                            예) @EqualsAndHashCode(exclude={"name"})
@Log : Log4j사용. private static final Logger logger 추가
@Slf4j : Slf4j사용. private static final Logger logger 추가

반응형
Comments