Mybatis-Spring集成

本文详细介绍如何在Spring项目中集成MyBatis,包括配置SqlSessionFactoryBean、MapperScannerConfigurer及事务处理等内容,使读者能够快速掌握Spring与MyBatis的整合技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

##1. Spring 集成mybatis 优点

Mybatis-spring 用于帮助你将 MyBatis 代码无缝地整合到 Spring 中。
Spring 将会加载必要的 MyBatis 工厂类和 session 类
提供一个简单的方式来注入 MyBatis 数据映射器和 SqlSession 到业务层的 bean 中。
方便集成spring事务
翻译 MyBatis 的异常到 Spring 的 DataAccessException 异常(数据访问异常)中。

Mybatis-spring 兼容性
MyBatis-Spring要求Java5及以上版本还有下面列出的MyBatis和Spring版本:
在这里插入图片描述

2. 配置步骤

1.准备spring项目一个
2. 在pom文件中添加mybatis-spring的依赖

<dependency>
	<groupId>org.mybatis</groupId>
	<artifactId>mybatis-spring</artifactId>
	<version>1.3.0</version>
</dependency>

3.配置SqlSessionFactoryBean

在 MyBatis-Spring 中, SqlSessionFactoryBean 是用于创建 Sql SessionFactory 的。 dataSource :用于配置数据源,该属性为必选项,必须通过这个属性配置数据源 ,这里 使用了上一节中配置好的 dataSource 数据库连接池 。

mapper Locations : 配置 SqlSessionFactoryBean 扫描 XML 映射文件的路径,可以使用 Ant 风格的路径进行配置。

configLocation :用于配置mybatis config XML的路径,除了数据源外,对MyBatis的各种配直仍然可以通过这种方式进行,并且配置MyBatis settings 时只能使用这种方式。但配置文件中任意环境,数据源 和 MyBatis 的事务管理器都会被忽略;

typeAliasesPackage : 配置包中类的别名,配置后,包中的类在 XML 映射文件中使用时可以省略包名部分 ,直接使用类名。这个配置不支持 Ant风格的路径,当需要配置多个包路径时可以使用分号或逗号进行分隔 。

在这里插入图片描述
4.配置MapperScannerConfigurer
通过 MapperScannerConfigurer类自动扫描所有的 Mapper 接口,使用时可以直接注入接口 。

MapperScannerConfigurer中常配置以下两个属性 。

basePackage : 用于配置基本的包路径。可以使用分号或逗号作为分隔符设置多于一个的包路径,每个映射器将会在指定的包路径中递归地被搜索到 。

annotationClass : 用于过滤被扫描的接口,如果设置了该属性,那么 MyBatis 的接口只有包含该注解才会被扫描进去
在这里插入图片描述
5.配置事务
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值