spring和MyBatis整合:

  1. 导入spring和MyBatis的整合jar包,以及其依赖jar包;

    导入MyBatis和spring的整合jar包。

    spring的核心jar包。

  2. 定义Mybatis的配置文件:映射文件,主配置文件;

  3. 修改spring的配置文件

MapperScannerConfigurer 配置

<!--注册SqlSessionFactory对象-->
<bean id="mySqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="myDataSource"/>
<property name="configLocation" value="mybatis.xml"/>
</bean> <!--注册Dao的代理对象-->
<!--<bean id="studentDao" class="org.mybatis.spring.mapper.MapperFactoryBean">
<property name="mapperInterface" value="com.abc.dao.IStudentDao"/>
<property name="sqlSessionFactory" ref="mySqlSessionFactory"/>
</bean>-->
<!--使用MapperScannerConfigurer时,生成的代理对象名称为对应接口的简单类名-->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.abc.dao"/>
<property name="sqlSessionFactoryBeanName" value="mySqlSessionFactory"/>
</bean>

MyBatis-Spring 提供了一个动态代理的实现:MapperFactoryBean。

这个类 可以让你直接注入数据映射器接口到你的 service 层 bean 中。当使用映射器时,你仅仅如调 用你的 DAO 一样调用它们就可以了,但是你不需要编写任何 DAO 实现的代码,因为 MyBatis-Spring 将会为你创建代理。

Demo:GitHub的09-spring-mybatis

参考:

博客

Mybatis中文网

05-27 06:55