Spring-HikariCP 설정

MIN.DI·2021년 7월 27일
0

강의록

목록 보기
45/54

HikariCP

javax.sql.DataSource의 구현객체 제공


pom.xml

     <!-- slf4j-log4j12 for HikariCP -->
      <dependency>
         <groupId>org.slf4j</groupId>
         <artifactId>slf4j-api</artifactId>
         <version>${org.slf4j-version}</version>
      </dependency>
      
    <!-- HikariCP -->
	<dependency>
	   <groupId>com.zaxxer</groupId>
	   <artifactId>HikariCP</artifactId>
	   <version>5.0.0</version>
	</dependency>

root-context

<?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 -->
	<!-- <Bean>: Spring Beans Container에 새로운 콩(Bean)을 등록해주는 태그. 수동으로 등록해야 한다.
		    새로운 Bean 등록시, class, id는 필수 등록해야 함.
	      Bean : Spring Beans Container가 관리하는 클래스를 의미함. (자바빈즈 규약을 지킴)-->
	<bean id="hikariConfig" class="com.zaxxer.hikari.HikariConfig">
		<description>HikariCP Configuration</description>	<!--Description은 선택사항-->

      	<!-- property: 속성(=필드). Bean들은, 자바빈즈 규약에 따라 생성된 클래스임.
 	따라서 이 property(속성, 필드)들은 모두 private 접근제한자를 가지고 있다.
		->> <property>태그는, 이 필드들에 대한 Setter메소드 역할을 함.
-->
		<property name="driverClassName" value="oracle.jdbc.OracleDriver"/>
		<property name="jdbcUrl" value="jdbc:oracle:thin:@db202106301639_high?TNS_ADMIN=C:/opt/OracleCloudWallet/ATP"/>
		<property name="username" value="HR"/>
		<property name="password" value="Oracle12345!!!"/>

		<property name="maximumPoolSize" value="10"/>
		<property name="minimumIdle" value="2"/>
		<property name="idleTimeout" value="10000"/>
		<property name="connectionTimeout" value="1000"/>
		<property name="connectionTestQuery" value="SELECT 1 FROM dual"/>
		<property name="dataSourceJNDI" value="jdbc/HikariCP"/>
	</bean>

	<bean id="hikariDataSource"
		  class="com.zaxxer.hikari.HikariDataSource"
		  destroy-method="close"> <!-- 해제할 때 어떤 메소드로 해제하는지? -> "close()"메소드로 해제한다!-->
		<description>HikariCP DataSource</description>
      
     		 <!--생성자의 인자값으로, 첫번째 등록한 Bean(id="hikariConfig") 을 사용.-->
		<constructor-arg ref="hikariConfig"/>

	</bean>


</beans>
profile
내가 보려고 쓰는 블로그

0개의 댓글