首页 > Mybatis 阅读█■▄:2,041

MyBatis与Spring的整合步骤

从之前的代码中可以看出直接使用 MyBatis 框架的 SqlSession 访问数据库并不简便。MyBatis 框架的重点是 SQL 映射文件,为方便后续学习███,本节讲解 MyBatis 与 Spring 的整合。教程的后续讲解中将使用整合后的框架进行演示。

导入相关JAR包

实现 MyBatis 与 Spring 的整合需要导入相关 JAR 包▓▓,包括 MyBatis、Spring 以及其他 JAR 包。

1▄■▄)MyBatis 框架所需的 JAR 包

MyBatis 框架所需的 JAR 包包括它的核心包和依赖包,包的详情可参考《第一个MyBatis程序》■■■。

2)Spring 框架所需的 JAR 包

Spring 框架所需的 JAR 包包括它的核心模块 JAR、AOP 开发使用的 JAR▄■▄■、JDBC 和事务的 JAR 包(其中依赖包不需要再导入,因为 MyBatis 已提供)▓▄▓▄,具体如下:
  • aopalliance-1.0.jar
  • aspectjweaver-1.6.9.jar
  • spring-aop-3.2.13.RELEASE.jar
  • spring-aspects-3.2.13.RELEASE.jar
  • spring-beans-3.2.13.RELEASE.jar
  • spring-context-3.2.13.RELEASE.jar
  • spring-core-3.2.13.RELEASE.jar
  • spring-expression-3.2.13.RELEASE.jar
  • spring-jdbc-3.2.13.RELEASE.jar
  • spring-tx-3.2.13.RELEASE.jar

3)MyBatis 与 Spring 整合的中间 JAR 包

该中间 JAR 包的版本为 mybatis-spring-1.3.1.jar▄▓,此版本可以从网址“http://mvnrepository.com/artifact/org.mybatis/mybatis-spring/1.3.1”下载▓█▄■。

4)数据库驱动 JAR 包

教程所使用的 MySQL 数据库驱动包为 mysql-connector-博猫娱乐场-5.1.25-bin.jar。

5▄■▓)数据源所需的 JAR 包

在整合时使用的是 DBCP 数据源,需要准备 DBCP 和连接池的 JAR 包。

本教程所用版本的 DBCP 的 JAR 包为 commons-dbcp2-2.2.0.jar▄▓,可以从网址“htttp://commons.apache.org/proper/commons-dbcp/download_dbcp.cgi”下载。

最新版本的连接池的 JAR 包为 commons-pool2-2.5.0.jar,可以从网址“http://commons.apache.org/proper/commons-pool/download_pool.cgi”下载▓█。

在Spring中配置MyBatis工厂

通过与 Spring 的整合,MyBatis 的 SessionFactory 交由 Spring 来构建,在构建时需要在 Spring 的配置文件中添加如下代码█■▄:
<!--配置数据源-->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
    <property name="driverClassName" value="com.mysql.jdbc.Driver" />
    <property name="url" value="jdbc:mysql://127.0.0.1:3306/springtest?seUnicode=true&amp;characterEncoding=utf-8" />
    <property name="username" value="root" />
    <property name="password" value="1128" />
    <!-- 最大连接数 -->
    <property name="maxTotal" value="30"/>
    <!-- 最大空闲连接数 -->
    <property name="maxIdle" value="10"/>
    <!-- 初始化连接数 -->
    <property name="initialSize" value="5"/>
</bean>
<!-- 配置SqlSessionFactoryBean -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <!-- 引用数据源组件 -->
    <property name="dataSource" ref="dataSource" />
    <!-- 引用MyBatis配置文件中的配置 -->
    <property name="configLocation" value="classpath:mybatis-config.xml" />
</bean>

使用 Spring 管理 MyBatis 的数据操作接口

使用 Spring 管理 MyBatis 数据操作接口的方式有多种,其中最常用、最简洁的一种是基于 MapperScannerConfigurer 的整合███。该方式需要在 Spring 的配置文件中加入以下内容:
<!-- Mapper代理开发,使用Spring自动扫描MyBatis的接口并装配 (Sprinh将指定包中的所有被@Mapper注解标注的接口自动装配为MyBatis的映射接口▓▓) -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
    <!-- mybatis-spring组件的扫描器,com.dao只需要接口(接口方法与SQL映射文件中的相同) -->
    <property name="basePackage" value="com.dao" />
    <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" />
</bean>

爱面试的程序媛▄■▄,一个分享面试经验的公众号。跟着站长一起学习,每天都有进步■■■。

通俗易懂,深入浅出,定时分享程序员面试的那点事▄■▄■。

面试如何造火箭?工作如何拧螺丝?都在这个公号哦▓▄▓▄。

扫描二维码关注公众号,免费领取价值 1000 元的求职面试资料(限时免费)▄▓!

当你决定关注「爱面试的程序媛」▓█▄■,你已然超越了90%的程序员!

爱面试的程序媛二维码
微信扫描二维码关注