데이터베이스 관련 자바 빈 설정

데이터베이스 관련 자바 빈 설정 개요

스프링에서 데이터베이스에 접속하기 위해서는 최소한 세개의 자바 빈이 필요합니다.

  • 데이터소스 빈 : 스프링에서 데이터베이스에 접속하기 위한 접속 정보를 뜻합니다.
  • sqlSessionFactory 빈 : 데이터베이스와 연결을 맺고 끊어질 때까지의 라이프 사이클을 관리하는 sqlSession 객체를 만듭니다.
  • sqlSessionTemplate 빈 : 데이터베이스에 개별적으로 쿼리를 실행시키는 객체입니다.

root-context.xml 파일 복사

  1. 패키지 탐색기에서 root-context.xml 파일을 복사합니다. 우클릭 후 Copy를 클릭하거나 ctrl + c를 누릅니다.

root-context.xml 붙여넣기

  1. src/main/webapp/WEB-INF/spring 폴더를 선택합니다.
  2. 우클릭 후 Paste 를 클릭하거나 ctrl + v를 누릅니다.

db-context.xml 파일 생성

  1. 파일명 변경 팝업이 보여집니다.
  2. db-context.xml 로 파일 이름을 변경합니다.
  3. OK 버튼을 클릭합니다.

db-context.xml 파일 내용 확인

  1. 생성된 db-context.xml 파일 내용을 확인합니다. 아무 내용도 없네요.

데이터 소스 빈 정의하기


src/main/webapp/WEB-INF/spring/db-context.xml

<!-- DB Context -->
<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="SPRNG_BLG_USR" />
    <property name="password" value="1234" />
</bean>
  1. <!-- Root Context: defines shared resources visible to all other web components --> 항목을 삭제합니다.
  2. 위의 코드 항목을 입력합니다.

sqlSessionFactory 빈 정의하기


src/main/webapp/WEB-INF/spring/db-context.xml

<bean id="sqlSessionFactory"
    class="org.mybatis.spring.SqlSessionFactoryBean">
    <property name="dataSource" ref="dataSource" />
    <property name="mapperLocations"
        value="classpath:/sqlmap/**/*_SQL.xml" />
</bean>
  1. 데이터소스 빈 정의 아래에 sqlSessionFactory 코드를 입력합니다.

sqlSessionTemplate 빈 정의하기


src/main/webapp/WEB-INF/spring/db-context.xml

<bean id="sqlSessionTemplate"
    class="org.mybatis.spring.SqlSessionTemplate">
    <constructor-arg index="0" ref="sqlSessionFactory" />
</bean>
  1. sqlSessionFactory 빈 정의 아래에 sqlSessionTemplate 코드를 입력합니다.

web.xml 파일에 db-context.xml 파일 추가


src/main/webapp/WEB-INF/web.xml

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/spring/db-context.xml</param-value>
</context-param>
  1. web.xml 파일을 엽니다.
  2. context-param 항목을 추가합니다.