고똘이의 IT 개발이야기

안녕하세요.

 

오늘은 springboot(스프링부트)를 쓰면서 많이 쓰이게 된 lombok(롬복)에 대해서 알아보겠습니다.

 

- 롬복이란

저희가 web개발을 하면서 쓰는 Vo, Dto Object에 getter/setter를 method로 선언을 해주는 번거로움이 있었는데 이 lombok(롬복)의 경우 @annotation으로 긴 자바 코드가 아닌 간결하게 getter/setter를 쓸 수 있습니다.

 

- 소스 설명

■ lombok(롬복)를 다운로드 받습니다.

↓lombok(롬복) 다운로드 주소.

https://projectlombok.org/download

 

■ gradle.build에 lombok를 추가합니다.

 

1
2
3
4
 
// lombok
providedCompile group: 'org.projectlombok', name: 'lombok', version: '1.18.10'
 
 

 

■ 다운로드 받은 lombok(롬복)파일을 Window에서 이클립스나 Sts에 연결을 해줘야 합니다. 연결 방법은 lombok(롬복)를 다운로드 받은 폴더로 가서 그 폴더 위에 마스크 커서를 올린 후 Shift + 마우스 우클릭 를 해주면 여기에 powershell창 열기라는게 보이는데 powershell창를 클릭 해주시면 관리자 권한으로 cmd를 열 수 있습니다.

 

아래 이미지 참고.

 

 

 

■ 관리자 cmd가 열리면 아래와 같이 파란색창이 열립니다. 이 파란색 cmd에서 java -jar lombok-1.16.16.jar (버전마다 파일 이름이 다릅니다.) 라고 쓴 후 엔터키를 눌러 줍니다.

 

아래 이미지 참고.

 

■ cmd창에서 엔터키를 눌러 주면 lombok를 Install하는 창이 열립니다. Install창이 열리면 이클립스, Sts 둘중 하나 혹은 두개가 설치되어 있다면 두개 다 선택이 되어 있을 겁니다. 만약 선택이 되어있지 않다면 Specifiy location를 눌러 이클립스 혹은 Sts의 실행 파일을 선택 해주면 됩니다. 두개 다 선택이 되어 있으면 바로 Install/Update를 클릭 해주시면 됩니다.

아래 이미지 참고.

 

■ 위와 같이 lombok(롬복)의 설치가 완료 되셨으면 다음으로는 이클립스 혹은 sts를 켜줍니다. 켜준 후 Vo, Dto에 변수를 선언 후 class 파일 위에 @getter/@setter annotation를 선언 해주면 저희가 항상 geeter/setter 변수를 만들어야 했던것을 간소화 할 수 있습니다.

 

아래 소스코드 참조.

 
// getter, setter annotation 
@Getter @Setter
public class Test {
 
    private String name;
    private String phoneNo;
    
}
 

 

■ 위와 같이 Getter, Setter 어노테이션을 설정 해주면 필요한 곳에서 Vo, Dto Object를 선언 해주면 Get, Set를 쓸 수 있습니다.

 

아래 소스코드 참조.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
public class TestController {
 
    // Object 선언
    Test testOb = new Test();
 
    // set
    testOb.setName("홍길동");
 
    // get(홍길동을 표출)
    System.out.println(testOb.getName());
    
}
 
http://colorscripter.com/info#e" target="_blank" style="color:#4f4f4ftext-decoration:none">Colored by Color Scripter

 

- 글을 마치며

지금까지 lombok(롬복)에 대해서 알아 봤습니다. 제가 설명을 getter/setter만 하였는데 추 후 다른 포스팅에서 lombok(롬복)에 대한 좀 더 상세한 포스팅을 진행 하겠습니다.

 

저의 블로그에 많지는 않지만 유용한 글이 있으니 한번 씩 둘러보고 가시면 좋으실거 같습니다.

 

감사합니다.

이 글을 공유합시다

facebook twitter googleplus kakaoTalk kakaostory naver band