Lonely Snowman
 

[Spring] 데이터베이스 연결 | 마이바티스 설정

pom.xml 에 의존 관계 정의

스프링 JDBC(Java DataBase Connectivitiy) 

https://mvnrepository.com/artifact/org.springframework/spring-jdbc

		<dependency>
		    <groupId>org.springframework</groupId>
		    <artifactId>spring-jdbc</artifactId>
		    <version>${org.springframework-version}</version>
		</dependency>

${org.springframework-version} 이거는 위에 <org.springframework-version>5.2.5.RELEASE</org.springframework-version> 이렇게 정의가 되어있어서 버전을 가져다 쓰는 것이다

 

ojdbc6 (oracle java database connectivity 드라이버)

https://mvnrepository.com/artifact/com.oracle.database.jdbc/ojdbc6

		<dependency>
		    <groupId>com.oracle.database.jdbc</groupId>
		    <artifactId>ojdbc6</artifactId>
		    <version>11.2.0.4</version>
		</dependency>

 

mybatis 라이브러리

XML로 쿼리를 작성하게 해주는 라이브러리

https://mvnrepository.com/artifact/org.mybatis/mybatis

		<dependency>
		    <groupId>org.mybatis</groupId>
		    <artifactId>mybatis</artifactId>
		    <version>3.5.10</version>
		</dependency>

 

MyBatis-Spring 라이브러리

스프링과 mybatis를 연동하게 해주는 라이브러리

https://mvnrepository.com/artifact/org.mybatis/mybatis-spring

		<dependency>
		    <groupId>org.mybatis</groupId>
		    <artifactId>mybatis-spring</artifactId>
		    <version>2.0.4</version>
		</dependency>

 

 

 

root-context.xml

dataSource  설정

dataSource : 데이터베이스와 관련된 정보를 설정한다

	<bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">
	   <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
	   <property name="url" value="jdbc:oracle:thin:@localhost:1521:xe" />
	   <property name="username" value="username" />
	   <property name="password" value="password" />
	</bean>

 

 

sqlSessionFactoryBean 클래스를 빈으로 정의

데이터베이스와 연결을 맺고 끊어질 때까지의 라이프 사이클을 관리해주는 sqlSession 객체를 생성

	<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
	   <property name="dataSource" ref="dataSource"></property>
	   <property name="mapperLocations" value="classpath:/sqlmap/**/*_SQL.xml" />
	   <property name="configLocation" value="/WEB-INF/mybatisAlias/mybatisAlias.xml" />
	</bean>

1) dataSource

2) 매퍼 xml의 위치 지정

루트는 src/main/resources/

그래서 /sqlmap/**/*_SQL.xml 경로에 위치한거만 매퍼 파일로 쓴다는 의미이다

**은 중간에 폴더들이 있어도 된다는거고

*_SQL.xml은 _SQL.xml로 끝나는 파일만 해당한다는 것이다

형식을 지켜주자!

3) 마이바티스 config 파일 위치 지정

파일명까지 잘 적어준당

 

 

sqlSessionTemplate 클래스를 빈으로 정의

sqlSessionTemplate : 데이터베이스에 개별적으로 쿼리를 실행시키는 객체

	<bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">
	   <constructor-arg index="0" ref="sqlSessionFactory" />
	</bean>

 

 

 

mybatisAlias.xml (mybatis-config 파일)

카멜 표기법이나 alias 등을 지정한다

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
  PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>

</configuration>

 

 

 

 

! 다음 글 이어서 !