Java

[Spring Boot] 이클립스(Eclipse) 롬복(LOMBOK) 설치 및 어노테이션 (Annotation) 사용 방법

cob 2022. 10. 7. 10:09

Lombok

 

롬복 라이브러리를 이용하면 getter, setter, builder, constructor를 작성하는데 시간을 소모할 필요가 없다.
롬복이 제공하는 어노테이션 프로세스가 자동으로 작성해 준다.

 

 


1. Lombok 설치 방법

1-1) https://mvnrepository.com/ 사이트에서 Lombok 다운

Lombok 다운

  • 원하는 버전을 다운로드한다.

 

1-2) Lombok 설치 방법

( 파일 이동 )

lombok 파일 이동

  • 다운로드한 lombok.jar 파일을 이클립스가 있는 곳으로 이동시킨다.

 

( Lombok Install )

cmd 터미널 또는 powershell를 켜서 jar 파일이 다운로드 된 디렉터리로 이동 후 롬복 해당 명령어를 통해 설치한다.
java -jar lombok-1.18.6.jar

  • 이클립스가 자동으로 잡힌다면 Install 받고, IDEs를 찾지 못한다면 Specify locaion을 선택하여 Eclipse.exe파일을 선택한 후 Install 받는다.
  • 설치가 완료되면 이클립스를 재시작한다.

 

 


2. 어노테이션( Annotation ) 프로세서 설정

이클립스가 어노테이션을 이해할 수 있게 설정해줘야 한다.
  • 프로젝트 우클릭 → Properties 클릭 → 아래 사진처럼 설정 클릭

어노테이션 프로세서 설정

 

 

 


3. 롬복(Lombok)의 어노테이션( Annotation ) 사용 방법

3-1) 어노테이션을 사용한 Entity파일 생성

( Entity 파일 )

@Builder                         // 오브젝트 생성을 위한 디자인 패턴
@NoArgsConstructor
@AllArgsConstructor
@Data
@Entity
publick class TodoEntity{
 	private String id; 			// 오브젝트의 아이디
	private String userId; 		// 오브젝트를 생성한 사용자의 아이디
	private String title; 		// Todo 타이틀(예: 운동하기)
	private boolean done;
}
  • @Builder : Builder 패턴을 사용하는 것은 생성자를 이용해 오브젝트를 생성하는 것과 비슷하다.
    장점이 있다면 생성자 매개변수의 순서를 기억할 필요가 없다는 점이다.
  • @NoArgsConstructor : 매개변수 없는 생성자를 구현해준다. 아래와 같이 생성자를 구현하는 것과 같다.
/* @NoArgsConstructor 아래 생성자와 같음 */
public TodoEntity(){ ... }
  • @AllArgsConstructor : 클래스의 모든 멤버 변수를 매개변수로 받는 생성자를 구현해준다. 아래와 같다
/* @AllArgsConstructor는 아래 생성자와 같음 */
public TodoEntity(String id, String userId, String title, boolean done){
	super()
	this.id=id;
	this.userUd = userId;
	this.title = title;
	this.done = tone;
}
  • @DATA : 클래스 멤버 변수의 Getter/Setter 메서드를 구현해준다.
/* @DATA는 아래 getter, setter와 같음  */
public String getId(){
	return id;
}
public void setId(String id){
	this.id=id;
}
...
public boolean isDone(){
	return done;
}
public void setDone(boolean done){
	this.done=done;
}

 

 

3-2) Entity Object 생성

// Builder 메서드 사용법
TodlEntity todo = TodEntity.builder()
                .id("t-10328373")
                .userId("developer")
                .title("Implement Model")
                .build();
                
todo.getId           
todo.setId("t-123")
  • Builder 패턴을 사용하여 Object 생성
  • 자동으로 변 id가  getId, setId로 getter, setter가 구현된다.
반응형