1. 프로젝트 생성 sample project 생성 > 패키지 org.zerock.sample > finish
2. pom.xml 수정
<상단>
<java-version>1.8</java-version>
<org.springframework-version>5.0.7.RELEASE</org.springframework-version>
<하단>
<source>1.8</source>
<target>1.8</target>
<!-- 4.7에서 4.12로 수정 -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
</dependencies>
<!-- 추가 작성 시작 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${org.springframework-version}</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<!-- 추가 작성 끝-->
3.라이브러리에 아래 있는 jar 파일 모두 넣기
3-1 lombok.jar (get, set, toString)
https://projectlombok.org/download
Download
projectlombok.org
3-2 5.0.7 버전 lib 모두 라이브러리에 넣기
https://repo.spring.io/release/org/springframework/spring/5.0.7.RELEASE/
Index of release/org/springframework/spring/5.0.7.RELEASE
repo.spring.io
3-3 결과 화면
4. class 만들기 (Chef / Restaurant) - org.zerock.sample 안에 생성
Chef.java
package org.zerock.sample;
import org.springframework.stereotype.Component;
import lombok.Data;
@Component
@Data
public class Chef {
}
Restaurant.java
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;
}
5.root-context.xml을 클릭 아래 부분 NameSpaces에 들어가 context 체크
<context:component-scan base-package="org.zerock.sample(Chef 및 Restaurant이 위치한 곳)"></context:component-scan> 삽입
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans https://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd">
<!-- Root Context: defines shared resources visible to all other web components -->
<context:component-scan base-package="org.zerock.sample"></context:component-scan>
</beans>
6. 테스트 src/test/java 안에 org.zerock.sample을 만들어 SampleTests.java 클래스를 생성한다.
package org.zerock.sample;
import static org.junit.Assert.*;
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 SampleTests {
@Setter(onMethod_ = {@Autowired})
private Restaurant restaurant;
@Test
public void testExist() {
assertNotNull(restaurant);
log.info(restaurant);
log.info("----------------------------");
log.info(restaurant.getChef());
}
}
@ContextConfiguration("root-context.xml이 위치한 곳")
Console 부분과 오른쪽 Spring Explorer 확인
'개발' 카테고리의 다른 글
Mapper & log4jdbc-log4j2 설정 (0) | 2020.08.21 |
---|---|
Spring JDBC, My batis (0) | 2020.08.20 |
Spring 비교하기 (xml) (0) | 2020.08.19 |
Spring Lombok 라이브러리 설치 (0) | 2020.08.19 |
[JSP] 회원제 게시판 구현 1 : 회원 관련 기능 (0) | 2020.07.27 |