본문 바로가기

SPRING

Lombok / Junit 라이브러리

Lombok 라이브러리

자바 개발 시 자주 사용하는 getter / setter / toString() / 생성자 등을 자동으로 생성해주는 라이브러리

어노테이션을 설정해두면 컴파일러가 어노테이션을 읽어 자동으로 완성해서 컴파일한다.

 

@Setter

setter 메서드를 생성해주는 역할

자주 사용하는 onMethod 속성은 setter 메서드의 생성 시 메서드에 추가할 어노테이션 지정해준다.

 

@Data

@ToString, @EqualsAndHashCode, @Getter/Setter, @RequiredArgsConstructor 모두 결합한 형태

 

@Log4j

로그 객체 생성

 

package org.zerock.sample;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import lombok.Data;
import lombok.Setter;

@Component
@Data
public class Restaurant {

	@Setter(onMethod_ = @Autowired)
	private Chef chef;
	
}

 

 

Junit 라이브러리

테스트할 때 필요한 라이브러리

 

@ContextConfiguration

스프링이 실행되면서 어떤 설정 정보를 읽어 들여야 하는지를 명시

 

@RunWith

테스트 시 필요한 클래스를 지정

 

@Test

해당 메서드가 단위 테스트의 대상임을 알려줌

 

package org.zerock.sample;

import static org.junit.Assert.assertNotNull;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

import lombok.Setter;
import lombok.extern.log4j.Log4j;

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("file:src/main/webapp/WEB-INF/spring/root-context.xml")
@Log4j
public class SampleTest {
	
	@Setter(onMethod_ = @Autowired)
	private Restaurant restaurant;
	
	@Test
	public void testExist() {
		assertNotNull(restaurant);
		
		log.info(restaurant);
		log.info("---------------------");
		log.info(restaurant.getChef());
	}

}