### <dataSource>태그란?

MyBatis 설정 파일에서 사용되는 태그로 MyBatis가 연동하는 데이터베이스에 대한 데이터 소스(dataSource)를 설정할 때 사용하고 driver 클래스명 , 데이터베이스 접속 주소, 아이디, 비번을 여기에 설정한다.

type 속성은 사용할 데이터 소스 구현 유형을 지정한다.

 

<dataSource type="POOLED">
	<property name="driver" value="oracle.jdbc.driver.OracleDriver" />
	<property name="url" value="JDBC:oracle:thin:@localhost:1521:XE" />
	<property name="username" value="본인의 아이디" />
	<property name="password" value="본인의 비밀번호" />
</dataSource>

 

 


<datasource type="pooled">

type="POOLED"은 풀링(pooling)된 데이터 소스를 사용하겠다는 의미이다.

풀링된 데이터 소스는 데이터베이스 connection pool을 사용하여 데이터베이스 연결을 관리한다.

 

connection pool 개념

connection pool은 미리 여러개의 DB 연결을 생성해두고, 애플리케이션에서 필요할 때 이들을 재사용하는 방식으로 동작하는 것을 말한다.

connection pool을 사용하면 연결을 여러 번 생성하고 닫는 시간이 줄어들어 성능이 향상되며, 동시 접속자 수가 많아져도 시스템이 안정적으로 동작할 수 있게 된다.


MyBatis에서 제공하는 3가지 데이터 소스 유형

UNPOOLED: 풀링되지 않은 데이터 소스로, 매 요청마다 새로운 연결을 생성하고 닫습니다. 성능 측면에서는 권장되지 않습니다.
POOLED: 풀링된 데이터 소스로, 연결 풀을 사용하여 연결을 재사용합니다. 일반적인 사용처에 권장됩니다.
JNDI: Java Naming and Directory Interface를 사용하여 서버 컨테이너에 저장된 데이터 소스를 찾아 사용합니다. 주로 Java EE 컨테이너에서 사용됩니다.



+ Recent posts