[Spring] lombok - VO 클래스를 간단하게 (설치시 에러해결)

Lombok

- 어노테이션만 사용하면 자바데이터 클래스 스타일의 객체로 만들어주는 라이브러리

 

Lombok 설치

Spring 프로젝트에서 Lombok을 사용하기 위해선 라이브러리와 pom.xml업데이트 둘 다 해야한다.

 

1. 라이브러리 다운 및 설치

https://projectlombok.org/download

위 홈페이지에서 버튼을 눌러 jar파일 다운로드를 한다.

 

다운이 완료 되었으면 lombok.jar를 더블클릭해서 실행한다.
(더블클릭 안 될 경우 cmd에서 lombok.jar를 받은 폴더로 이동한 뒤 java -jar lombok.jar 명령어를 실행한다.)

실행하면 위와같은 창이 뜨는데 Specify location... 을 눌러서 이클립스 실행파일을 선택한 후 Install/Update를 하면 설치가 완료되고 이클립스를 재실행 하면 된다.

※ 만약 이클립스 설치 경로에 한글이 있다면 전부 영어로 변경한 후 Install/Update를 실행 한다. (안하면 이클립스 실행 안됨)
 
혹시 경로에 한글이 존재하는 상태에서 실행을 했다면

1. 경로내에 모든 한글을 영어로 변경한다.
2. 이클립스 실행파일이 있는 폴더에서 eclipse.ini를 수정해주면 된다. 

3. 위의 -javaagent에 새로 변경한 경로로 다시 작성한후 저장한다.

 

2. pom.xml에 추가 

pom.xml에 위에서 설치한 lombok.jar 파일과 같은 버전을 받아서 추가한다.

1
2
3
4
5
6
<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.20</version>
    <scope>provided</scope>
</dependency>
cs


여기까지 완료 했다면 설치는 끝.

 

Lombok 어노테이션

어노테이션 설명
@Getter 모든 필드에 getter를 자동으로 생성
@Setter 모든 필드에 setter를 자동으로 생성
@Data 클래스 내부의 모든 필드에 대해 getter/setter를 생성,
toString, equals, hashCode 오버라이드,
final, @NonNull이 붙은 필드값을 포함하는 생성자 생성
@NonNull 해당 필드에는 반드시 값이 있어야 함을 표시한다.
@ToString 모든 필드값을 출력하는 toString()을 알아서 오버라이드
@NoArgsConstructor 기본 생성자를 자동으로 생성
@AllArgsConstructor 모든 필드값을 채우는 생성자 자동으로 생성
@RequiredArgsConstructor @NotNull이 붙은 필드만 채우는 생성자 생성
@EqualsAndHashConde equals와 hashCode를 알아서 생성
@Log4j Log4j 연결을 자동으로 생성



Lombok 사용 예제

 

@NoArgsConstructor	// 기본 생성자 생성
@RequiredArgsConstructor   //NonNull이 붙은 필드의 생성자만 생성
@AllArgsConstructor 	// 모든 필드의 생성자 생성
@Getter  // getter
@Setter  // setter
@ToString	// ToString
public class Employee {
	@NonNull	// NonNull
	private int employee_id;
	private String first_name;
	private @NonNull String last_name;
	private @NonNull String email;
	private int department_id;
}

위와 같이 작성하면 코드상에는 보이지 않지만
getter/setter , 생성자3개 (기본, @NonNull이 붙은 필드, 모든 필드), ToString이 존재하는 클래스가 된다.

아래처럼 클래스 파일을 펼쳐서 생성된 것을 확인할 수 있다.

 

댓글

Designed by JB FACTORY