MyBatis快速入门第七讲——MyBatis整合Spring

本文详述了MyBatis3.2.7与Spring4.2.4的整合过程,包括整合思路、所需jar包、步骤以及两种DAO层开发方式:传统DAO和Mapper代理。文中提供了配置文件示例和注意事项,适合初学者掌握整合技巧。
摘要由CSDN通过智能技术生成

本文将手把手教你MyBatis如何整合Spring,这儿,笔者使用的MyBatis是MyBatis3.2.7这个版本,Spring是Spring4.2.4这个版本,读者只要学会这两个版本的框架整合之后,其他版本之间的整合就一通百通了。

整合思路

MyBatis整合Spring的思路如下:

  1. SqlSessionFactory对象应该放到Spring容器中作为单例存在;
  2. 传统dao的开发方式中,应该从Spring容器中获得SqlSession对象;
  3. Mapper代理形式中,应该从Spring容器中直接获得Mapper的代理对象;
  4. 数据库的连接以及数据库连接池事务管理都要交给Spring容器来完成。

整合需要的jar包

MyBatis整合Spring所需的jar包如下:

  1. Spring的jar包;
  2. MyBatis的jar包;
  3. Spring与MyBatis的整合包,即mybatis-spring-1.2.2.jar
  4. MySQL数据库驱动jar包;
  5. 数据库连接池的jar包。

我整理出来的MyBatis与Spring整合的全部jar包(包括SpringMVC)有下面这些,一共31个jar包。
在这里插入图片描述

整合的步骤

接下来,我将按照下面整合的步骤来整合MyBatis与Spring:

  1. 第一步:创建一个普通的Java工程;
  2. 第二步:导入jar包(上面所提到的jar包);
  3. 第三步:编写MyBatis的配置文件(即SqlMapConfig.xml);
  4. 第四步:编写Spring的配置文件,在该配置文件中,可能需要进行如下配置:
    • 数据库连接及连接池
    • 事务管理(暂时可以不配置)
    • SqlSessionFactory对象需要配置到Spring容器中
    • Mapeer代理对象或者是dao层实现类需要配置到Spring容器中
  5. 第五步:编写dao层或者mapper.xml映射文件;
  6. 第六步:测试。

按照上面的步骤来整合MyBatis与Spring的话,一般来讲,MyBatis的核心配置文件(即SqlMapConfig.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>
	<!-- 加载映射文件 -->
	<mappers>
		<mapper resource="mybatis/user.xml" />
	</mappers>
</configuration>

该核心配置文件处于工程中的如下图所示的位置。
在这里插入图片描述
Spring核心配置文件(即application-context.xml)的内容就应该是下面这个样子。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:context="http://www.springframework.org/schema/context" xmlns:p="http://www.springframework.org/schema/p"
	xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
	http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd
	http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsd
	http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-4.0.xsd">

   <!-- 加载配置文件 -->
   <context:property-placeholder location="classpath:jdbc.properties" />

	<!-- 数据库连接池 -->
	<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
		destroy-method="close">
		<property name="driverClassName" value="${jdbc.driver}" />
		<property name="url" value="${jdbc.url}"<
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李阿昀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值