在集成ibatis配置中,我们需要在root-context.xml中配置以下几条
1.执行sql的对象sqlMapClient
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocation" value="classpath:resource/SqlMapConfig.xml" />
<property name="dataSource"><ref bean="dataSource" /></property>
</bean>
- 因为使用Spring带来的便利,所以在SqlMapConfig配置里面我们需要把db.properties的读取配置全部删掉,只留下映射sql语句的配置文件即可
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMapConfig
PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
<sqlMap resource="resource/User.xml" />
</sqlMapConfig>
3.在root-context.xml配置中还需要配置datasource数据源
<!-- 配置数据源,并使用属性配置文件中的数据 -->
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${driverClassName}" />
<property name="url" value="${url}" />
<property name="username" value="${username}" />
<property name="password" value="${password}" />
</bean>
4.我们还需要一个数据库的配置信息以及调用他的配置
<!-- 读取属性配置文件 -->
<bean id="propertyManager" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath:resource/db.properties</value>
</list>
</property>
</bean>
Oracle数据库
driverClassName=oracle.jdbc.driver.OracleDriver
url=jdbc:oracle:thin:@10.56.80.14:1521:lisdat
username=ebiz
password=ebiz
MySQL数据库
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/db1
username=root
password=root
5.Spring框架对ibatis的一些设置进行升级,把sqlMapClient进行了封装
<bean id="sqlMapClientTemplate" class="org.springframework.orm.ibatis.SqlMapClientTemplate">
<property name="sqlMapClient" ref="sqlMapClient"/>
</bean>
6.在service层使用标签时,还要对service层进行组件扫描
<context:component-scan base-package="service"></context:component-scan>