Mybatis 설정을 다음과 같이 해둔다.
여기서는 기본적인 원리를 설명하는 것은 아니기 때문에 어느정도 아는 분이 보았으면 좋겠다.
${jdbc.driverClassName} 과 같은 설정은 Property파일을 이용하여 설정하였다.
사용할지 모른다면 값을 직접 넣어도 된다.
<!-- ########################## DB Setting ########################## -->
<bean id="dataSourceInfo" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</bean>
<bean id="dataSourceMySQL" class="net.sf.log4jdbc.Log4jdbcProxyDataSource">
<!--
위에서 설정한 DB 정보를 연결한다.
이 설정은 Log4j를 이용하여 콘솔에 보이는 방법을 한 것이며
왠만해선 설정해두는게 좋다.
-->
<constructor-arg ref="dataSourceInfo" />
<property name="logFormatter">
<bean class="net.sf.log4jdbc.tools.Log4JdbcCustomFormatter">
<property name="loggingType" value="MULTI_LINE" />
<property name="sqlPrefix" value="SQL : " />
</bean>
</property>
</bean>
<!--
Mybatis 의 SessionFactory 를 설정
dataSource 는 위의 dataSourceMySQL를 참조하도록 하고
configLocation 는 mybatis-config.xml을 통해 기타 추가 설정을 한다.(여기서는 생략)
mapperLocations 를 이용해서 매퍼의 위치를 설정한다.
-->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSourceMySQL" />
<property name="configLocation" value="/WEB-INF/spring/mybatis-config.xml" />
<!-- 매퍼의 위치가 1곳일 경우 사용 -->
<!-- <property name="mapperLocations" value ="/WEB-INF/classes/mapper/*.xml"
/> -->
<!-- 매퍼의 위치가 폴더별로 하층구분을 한다면 아래의 설정을 사용 -->
<property name="mapperLocations">
<array>
<value>/WEB-INF/classes/mapper/*.xml</value>
<value>/WEB-INF/classes/mapper/*/*.xml</value>
</array>
</property>
</bean>
### sqlSessionFactory에서 지정했던 mybatis-config.xml 파일 설정
<?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>
<!-- 기본정보 셋팅 -->
<settings>
<setting name="cacheEnabled" value="true" />
<setting name="lazyLoadingEnabled" value="true" />
<setting name="aggressiveLazyLoading" value="true" />
<setting name="useGeneratedKeys" value="true" />
<setting name="defaultExecutorType" value="REUSE" />
<setting name="defaultStatementTimeout" value="300" />
<setting name="localCacheScope" value="SESSION" />
<setting name="mapUnderscoreToCamelCase" value="true" />
<!-- select 결과값이 null라도 key생성 -->
<setting name="callSettersOnNulls" value="true"/>
</settings>
<typeAliases></typeAliases>
<!-- 날짜관련 설정 -->
<typeHandlers>
<typeHandler
javaType="java.sql.Timestamp"
handler="com.jc.nexstore.core.mybatis.UtcDateTypeHandler" />
<typeHandler
javaType="java.sql.Time"
handler="com.jc.nexstore.core.mybatis.UtcDateTypeHandler" />
<typeHandler
javaType="java.sql.Date"
handler="com.jc.nexstore.core.mybatis.UtcDateTypeHandler" />
</typeHandlers>
</configuration>
이정도 설정하면 사용이 가능하다.
'공부 > 프로그래밍' 카테고리의 다른 글
[Spring] Mybatis 사용하기 (mapper를 interface를 이용하여 호출) (1) | 2017.04.20 |
---|---|
[Spring] Mybatis 사용하기 (mapper의 id를 직접 호출) (0) | 2017.04.20 |
[Spring] Mybatis 에서 Insert 시 자동 생성키 이용하기 (0) | 2017.04.20 |
[Spring] Mybatis 에서 Mapper(매퍼) 연결하는 2가지 방법에 대한 선택 가이드. (0) | 2017.04.20 |
[Spring] web.xml 설정. (2) | 2017.04.18 |
댓글