ch3-13 - Spring, DB 연결
- MySQL 연결
- JDBC
- Spring JDBC
- JUnit
- IntelliJ, MySQL 연동
JDBC
- pom.xml - mysql-connector-java추가(mysql검색)
Spring JDBC
- pom.xml - spring-jdbc추가(spring jdbc검색) - EL로 srping 버전 변경
- root-context.xml - dataSource 빈을 등록
(property태그로 setter를 이용해서 DataSource 초기화)
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://localhost:3306/springbasic?useUnicode=true&characterEncoding=utf8"></property>
<property name="username" value="tone8943"></property>
<property name="password" value="1234"></property>
</bean>
JUnit - Test Framework
- Test 자동화 - TDD(Test Driven Development, 테스트 주도 개발)
- JUnit4로 테스트
@Autowired
DataSource ds; //테스트 클래스의 클래스영역에 작성. 아래와 같다 - 빈으로 등록한 DataSource를 자동 주입.
//위의 자동 주입을 받지 않으면, 아래와 같이 메서드영역에 작성해서 getBean으로 수동 주입을 해야한다.
//ApplicationContext ac = new GenericXmlApplicationContext("file:src/main/webapp/WEB-INF/spring/**/root-context.xml");
//DataSource ds = ac.getBean(DataSource.class);
- pom.xml - 아래에 spring-test추가(spring test검색) - EL로 spring 버전 변경.
- @RunWith, @ContextConfiguration을 클래스 위에 작성.
//재사용 할 수 있는 하나의 AC를 자동으로 생성한다.
//(메서드에서 수동으로 생성하면, 메서드 실행시마다 AC가 새로 생성된다.)
@RunWith(SpringJUnit4ClassRunner.class)
//생성된 AC에 사용할 설정파일 위치를 지정한다.
@ContextConfiguration(locations={"file:src/main/webapp/WEB-INF/spring/**/root-context.xml"})
- 오류가 발생하면 pom.xml의 JUnit version을 4.12로 한다.
Database와 IntelliJ 연동
우측 Database - '+'버튼 - mysql - User, Pwd, Database입력(DB는 schema명)
- driver다운 - Test Connection - OK