라이브러리 추가는 pom.xml에 Maven코드를 추가만 시켜주면 되기 때문에 매우 간단하지만 라이브러리 추가만으로 'HikariCP 커넥션 풀'을 사용할 수 없습니다. root-context.xml에 DataSource에 대한 설정을 추가해주어야만 '커넥션 풀' 사용이 가능합니다.
* HikariCP는 Java 버전을 무엇을 쓰냐에 따라 다른 버전을 사용하여야 합니다. Java8 버전 경우 3.4.2 버전을 사용하면 됩니다. 다른 버전을 사용하실 경우 다음의 링크를 참고 부탁드립니다.
https://github.com/brettwooldridge/HikariCP
<!-- HikariCP 추가 -->
<!-- https://mvnrepository.com/artifact/com.zaxxer/HikariCP -->
<dependency>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
<version>3.4.2</version>
</dependency>
src/main/webapp/WEB-INF/spring/root-context.xml
<!-- HikariCP 추가 -->
<bean id="hikariConfig" class="com.zaxxer.hikari.HikariConfig">
<property name="driverClassName" value="com.mysql.cj.jdbc.Driver"></property>
<property name="jdbcUrl" value="jdbc:mysql://localhost:3306/데이터베이스명?serverTimezone=Asia/Seoul"></property>
<property name="username" value="사용자명"></property>
<property name="password" value="비밀번호"></property>
</bean>
<bean id="datasource" class="com.zaxxer.hikari.HikariDataSource" destroy-method="close">
<constructor-arg ref="hikariConfig"></constructor-arg>
</bean>
테스트는 스프링에 빈(Bean)으로 등록된 DataSource를 이용해서 Connection을 제대로 처리할 수 있는지 확인하기 위한 용도입니다.
*테스트 코드는 root-context.xml에 DataSource를 설정하셨다면 데이터베이스 종류에 상관없이 실행이 됩니다.
테스트를 위해 존재하는 src/test/java 경로에 com.test.persistence를 생성하고 DataSourceTest.java 클래스를 생성
아래의 코드를 추가
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("file:src/main/webapp/WEB-INF/spring/root-context.xml")
public class DataSourcetest {
@Autowired
private DataSource dataSource;
@Test
public void testConnection() {
try(
Connection con = dataSource.getConnection();
){
System.out.println("con="+con);
}catch(Exception e) {
e.printStackTrace();
}
}
}
Junit 테스트를 진행
결과 확인