MyBatis和Spring整合 - 使用Mapper代理

MyBatis和Spring的优点

工欲善其事,必先利其器。开发环境配置好才能正常地编辑和编译代码,就像盖起一座高楼大厦最重要的是打地基。假如要开发Web应用,那么基本离不开数据的存储和处理,也就是离不开数据库。MyBatis解决了JDBC硬编码的问题,把SQL语句配置在了xml文件里,同时mapper映射配置文件可以将数据库操作结果集映射到相应的Java实体类中,十分方便。和Spring整合后,数据库连接池的配置将会放到Spring中,封装JDBC对事务的处理。MyBatis通过SqlSessionFactory来加载全局配置文件和映射配置文件等,初始化出SqlSession会话,提供数据库连接,Spring可以负责管理SqlSessionFactory,管理mapper映射文件,提供事务处理。所以MyBatis和Spring的整合,相得益彰,这篇日志就来看下两者的整合过程,以及使用mapper代理配置后,如何更方便地进行事务处理。

 

Spring配置文件

<?xml version="1.0" encoding="UTF-8"?>
<!-- Spring配置文件 -->
<!-- 添加Spring的xmlns和xsi信息 -->
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:mvc="http://www.springframework.org/schema/mvc"
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:aop="http://www.springframework.org/schema/aop"
	xmlns:tx="http://www.springframework.org/schema/tx"
	xsi:schemaLocation="http://www.springframework.org/schema/beans
		http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
		http://www.springframework.org/schema/mvc
		http://www.springframework.org/schema/mvc/spring-mvc-3.2xsd
		http://www.springframework.org/schema/context
		http://www.springframework.org/schema/context/spring-context-3.2.xsd
		http://www.springframework.org/schema/aop
		http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
		http://www.springframework.org/schema/tx
		http://www.springframework.org/schema/tx/spring-tx-3.2.xsd ">

	<!-- 加载数据库静态属性配置文件 -->
	<context:property-placeholder location="classpath:db.properties" />
	

首先是Spring配置文件,开头声明了xml版本信息1.0和编码信息UTF-8后,接下来在beans标签对中配置xmlns文档信息(类似于URL)。xsi是模式文档信息,即xml规范。之后第21行,配置数据库连接信息,和MyBatis一样,我们把数据库的连接的配置信息放在了外部的文件里,在Spring配置文件中,通过读取外部静态属性文件,来和数据可建立连接,进行交互。Spring使用的也是DBCP数据库连接池(或者说数据源),这样做的好处是,数据库连接配置信息无需写入到应用程序的代码中,与SQL语句无需硬编码道应用程序代码中一样。来看看保存着数据库连接配置信息的外部静态属性文件:

#JDBC 
jdbc.driver = com.mysql.jdbc.Driver
jdbc.url = jdbc:mysql://localhost:3306/mybatis_test?characterEncoding=utf-8&useSSL=false
jdbc.username = root
jdbc.password = 12345

用户名密码等信息的参数都配置在了这里面,Spring只要读取它们即可。

回到Spring配置文件上,下一个标签配置数据库连接池:

<!-- 数据源 -->
	<bean id="dataSource
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以回答这个问题。MyBatis-Spring-Boot-Starter 是一个 MyBatisSpring Boot 集成的插件,可以方便地在 Spring Boot 项目中使用 MyBatis 进行数据库操作。它提供了自动配置和一些常用的配置选项,使得使用 MyBatis 变得更加简单和便捷。 ### 回答2: MyBatis-Spring-Boot-Starter是一个用于整合MyBatisSpring Boot的工具。它提供了一种方便的方式来配置和使用MyBatis持久化框架,并简化了与Spring Boot的集成过程。 首先,MyBatis-Spring-Boot-Starter支持自动配置。它会根据项目的依赖和配置文件来自动初始化和配置MyBatis,大大减少了手动配置的工作量。只需简单地在配置文件中指定数据库的连接信息和MyBatis的相关配置,就可以轻松地集成MyBatis框架到Spring Boot应用中。 其次,MyBatis-Spring-Boot-Starter还支持事务管理。通过注解的方式,可以很方便地对数据库操作进行事务管理。开发者可以使用@Transactional注解来标记需要进行事务管理的方法,MyBatis-Spring-Boot-Starter会自动为其开启事务并处理事务的提交和回滚。 此外,MyBatis-Spring-Boot-Starter还提供了一些额外的功能,如分页插件、缓存管理等。分页插件可以简化分页查询操作,缓存管理可以提高查询效率。这些功能的开启和配置也是非常简单的,只需在配置文件中进行相应的配置即可。 总而言之,MyBatis-Spring-Boot-Starter是一个极大简化了整合MyBatisSpring Boot的工具,它提供了自动配置、事务管理和其他辅助功能,使开发者可以更加轻松地使用MyBatis作为数据持久化框架,并结合Spring Boot快速构建稳定高效的应用程序。 ### 回答3: mybatis-spring-boot-starter是一个用于集成MyBatisSpring Boot的工具包。它可以极大地简化在Spring Boot项目中使用MyBatis的配置和使用过程。 使用mybatis-spring-boot-starter,我们不再需要手动配置MyBatis的配置文件和数据源等信息。只需要在项目的application.properties(或application.yml)文件中简单配置几个参数,如数据库连接信息、MyBatisMapper接口所在的包路径等,就可以自动完成MyBatis的初始化工作。 另外,mybatis-spring-boot-starter还集成了一些常用的功能,方便我们在Spring Boot项目中使用MyBatis。例如,它可以自动扫描并注册Mapper接口,并将其注入到Spring容器中。我们可以直接使用@Autowired注解将Mapper接口注入到我们的服务类中,无需手动实例化。 此外,mybatis-spring-boot-starter还提供了一些常见的插件和功能扩展。例如,它支持分页插件、动态SQL插件等,可以方便地对数据库进行操作。同时,它还支持事务管理,保证了数据库操作的一致性和完整性。 总之,mybatis-spring-boot-starter为我们提供了一种更加便捷和高效的方式来集成MyBatisSpring Boot。它减少了我们的配置工作,提高了开发效率,并且提供了一些常用的功能扩展。使用mybatis-spring-boot-starter,我们可以更加专注于业务逻辑的开发,而无需过多关注底层的配置和细节。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值