본문 바로가기
Spring

Spring - Oracle 연결 테스트, CP 설정

by skwzz 2019. 12. 13.

Java 1.8

Spring  5.0.7

Oracle 11g xe 

기준 연결 방법

 

1. JDK 8버전용 ojdbc8.jar 파일을 구함 ( 다운받거나 오라클 폴더 내에 있음)

 

2. 프로젝트 Build Path / Web Deployment Assembly에 ojdbc8을 추가

 

 

 

3. 테스트 코드 작성 후 연결 확인

@Log4j
public class JDBCTests {

	static {
		try {
			Class.forName("oracle.jdbc.driver.OracleDriver");
		}catch(Exception e) {
			e.printStackTrace();
		}
	}
	
	@Test
	public void testConnection() {
		try {
			String url = "jdbc:oracle:thin:@localhost:1521:xe";
			String userName = "skwzz";
			String userPassword = "skwzz";
			Connection c = DriverManager.getConnection(url, userName, userPassword);
			log.info(c);
		}catch(Exception e) {
			fail(e.getMessage());
		}
	}
}

 

 

실행결과 확인 

 

 

4. HikariCP 사용을 위해 pom.xml 에 추가

<!-- https://mvnrepository.com/artifact/com.zaxxer/HikariCP -->
<dependency>
  <groupId>com.zaxxer</groupId>
  <artifactId>HikariCP</artifactId>
  <version>2.7.4</version>
</dependency>

 

 

5. HikariCP 설정 / DataSource 를 root-context.xml 에 설정

<bean id="hikariConfig" class="com.zaxxer.hikari.HikariConfig">
  <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"></property>
  <property name="jdbcUrl" value="jdbc:oracle:thin:@localhost:1521:XE"></property>
  <property name="username" value="skwzz"></property>
  <property name="password" value="skwzz"></property>
</bean>

<bean id="dataSource" class="com.zaxxer.hikari.HikariDataSource" destroy-method="close">
	<constructor-arg ref="hikariConfig"/>
</bean>

 

 

6. DataSource를 사용한 연결 테스트 코드 작성

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("file:src/main/webapp/WEB-INF/spring/root-context.xml")
@Log4j
public class DataSourceTests {
	
	@Setter(onMethod_ = {@Autowired})
	private DataSource ds;
	
	@Test
	public void testConnection() {
		try {
			Connection c = ds.getConnection();
			log.info(c);
		}catch(Exception e) {
			fail(e.getMessage());
		}
	}
}

 

 

실행 결과

'Spring' 카테고리의 다른 글

@ControllerAdvice를 사용한 Exception 처리  (0) 2019.12.13
Spring - MyBatis 연동  (0) 2019.12.13