에스제이

반응형

이번 포스트에서는 lombok 설치 및 사용법에 대해서 알아보도록 하겠습니다.

프로젝트를 개발하다 보면 누구나 한 번쯤은 Getter/Setter 메서드를 생성하는걸 번거롭고 귀찮게 생각했을 것입니다. 또한 toString() 혹은 생성자 함수를 생성하는 것 또한 번거로울 것입니다. 개발의 생산성을 높이고 Getter/Setter를 생성하는 단순 반복 잡을 줄이고자 Lombok 라이브러리에 대해서 알아봅시다.

 

1.) Lombok(다운로드)

아래의 홈페이지를 접속하여 다운로드 합니다.

☞MVNrepository를 통한 다운로드

검색창에 [lombok]을 입력하고 첫 번째로 검색된 [Project Lombok]을 클릭합니다.


개인이 원하는 버전을 선택합니다. 저는 가장 최신 버전을 선택해보도록 하겠습니다.


Files 탭의 jar를 클릭하여 다운로드합니다.


다운로드 한 lombok 파일을 원하는 경로로 이동시킨 후 cmd를 실행시킵니다.

cmd창에 java -jar 개인이 설치한 버전.jar로 롬복 인스톨러를 실행시킵니다. 

ex) 제가 설치한 lombok버전은 1.18.12이므로 java -jar lombok-1.18.12.jar를 입력합니다.

 


lombok 인스톨러를 실행시키면 아래와 같은 창이 뜹니다. [Specify location]을 클릭하여 개인이 설치된 IDE를 선택한 후 [install/update]를 클릭합니다.


install 후 개인의 IDE 폴더로 들어가면 lombok.jar 파일이 생성된 걸 확인할 수 있습니다.


STS(Spring Tool Suite)를 사용할 경우 SpringToolSuite.ini, 이클립스를 사용할 경우 eclipse.ini를 우클릭하여 편집기로 파일을 열면 lombok이 추가된 걸 확인할 수 있습니다.


2.) Lombok 사용법

Lombok을 사용하기 전후의 자바 클래스를 비교해 보겠습니다.

Lombok 사용하기 전 getters/setters 직접 명시한 클래스

public class User {
    private String id;
    private String userName;
    private String email;
    
    public String getId(){
        return id;
    }
    
    public void setId(String id){
        this.id = id
    }
    
    public String getUserName(){
        return userName;
    }
    
    public void setUserName(String userName){
        this.userName = userName;
    }
    
    public String email(){
        return email;
    }
    
    public void setEmail(String email){
        this.email = email;
    }
}

Lombok 사용 후 @Getter, @Setter 명시한 클래스

@Getter
@Setter
public class User {
    private String id;
    private String userName;
    private String email;
}

lombok은 @Getter/@Setter 이외에도 다양한 어노테이션을 지원합니다.

 

lombok을 사용하기 전 기본 생성자와 모든 필드 값을 받는 생성자를 명시한 클래스

public class User {
    private String id;
    private String userName;
    private String email;
    
    public User(){
    }
    
    public User(String id, String userName, String email){
        this.id = id;
        this.userName = userName;
        this.email = email;
    }
}

lombok을 사용 후 @NoArgsConstructor, @AllArgsConstructor를 명시한 클래스

@NoArgsConstructor
@AllArgsConstructor
@Data
public class User {
    private String id;
    private String userName;
    private String email;
}

위에서 언급한 어노테이션 이외에도 다양한 어노테이션이 있지만 Lombok에 대한 설명은 이것으로 마치겠습니다. Lombok을 사용하여 단순하고 간결한 코드를 작성하여 가독성이 향상되고 필드값을 추가 및 삭제할 때도 getter/setter를 신경 쓸 필요가 없어 유지보수에도 큰 도움이 됩니다.

정독해주셔서 감사합니다. :)

 

 

 

반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band