博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Mybatis(三):Mybatis-Spring实践
阅读量:4646 次
发布时间:2019-06-09

本文共 3066 字,大约阅读时间需要 10 分钟。

MyBatis 提供了  组件,能够将 MyBatis “无缝嵌入” 到 Spring 框架,例如:将 MyBatis 映射器 “注入” 到 Bean。

引入 MyBatis-Spring 而产生的变更,主要涉及:

  • 数据源(数据库连接)配置
  • SqlSessionFactory:基于 MyBatis-Spring 的 org.mybatis.spring.SqlSessionFactoryBean
  • 映射器
  • 事务

MyBatis-Spring 提供了 org.mybatis.spring.SqlSessionTemplate 作为 SqlSession 实现。

关于映射器配置,Mybatis-Spring 支持 org.mybatis.spring.mapper.MapperScannerConfigurer 和 org.mybatis.spring.mapper.MapperFactoryBean 两种形式:

  • MapperFactoryBean,即手工配置映射器:类型为 org.mybatis.spring.mapper.MapperFactoryBean 的 bean 作为映射器
  • 通过 mapperInterface 属性,配置映射器的 Java 接口类型
  • 通过 sqlSessionFactory 属性,注入 SqlSessionFactory
  • MapperScannerConfigurer,表示由 Spring 自动扫描,获取映射器
  • 通过 basePackage 属性,配置 “扫描路径”
  • 通过 annotationClass 属性,配置:仅扫描 “路径” 中,被特定注解标记的 Java 接口
  • 通过 markerInterface 属性,配置:仅扫描 “路径” 中,继承特定接口的 Java 接口
  • 通过 sqlSessionFactoryBeanName 属性,关联 SqlSessionFactory,以注入到映射器中

mybatis-config.xml

spring-dao.xml

spring-transaction.xml

  • 构建 org.springframework.jdbc.datasource.DriverManagerDataSource 类型的 bean,作为数据库连接配置
  • 构建 org.mybatis.spring.SqlSessionFactoryBean 类型的 bean,其中:
    通过 dataSource 属性注入数据库连接信息
  • 通过 configLocation 属性设置 MyBatis 配置文件路径(SqlSessionFactoryBean 支持直接注入 MyBatis 配置项)
  • 构建 org.springframework.jdbc.datasource.DataSourceTransactionManager 类型的 bean,并启用 “声明式事务”

MyBatis Generator

generatorConfig.xml

pom.xml

org.springframework.boot
spring-boot-maven-plugin
org.mybatis.generator
mybatis-generator-maven-plugin
1.3.2
Generate MyBatis Files
generate
generate
true
true

执行

maven执行mybatis-generator

 

转载于:https://www.cnblogs.com/yang21/p/9826306.html

你可能感兴趣的文章
ehcache memcache redis 三大缓存男高音
查看>>
eclipse 快捷键Open Implementation 直接退出
查看>>
minix中管道文件和设备文件的读写
查看>>
JAXB - Annotations, Annotations for Enums: XmlEnum, XmlEnumValue
查看>>
context 插图
查看>>
文件管理器中不支持的wma歌曲也显示可以播放的音乐图标
查看>>
Java基础学习-流程控制语句
查看>>
Shell中read的常用方式
查看>>
01javascript数据类型
查看>>
asp.net实现md5加密方法详解
查看>>
AJAX
查看>>
table 的thead th 固定 tbody滚动例子
查看>>
并行计算思考----回溯法求解数独问题
查看>>
设计模式:模板模式
查看>>
和菜鸟一起学OK6410之ADC模块
查看>>
代理 模式
查看>>
[git] 细说commit (git add/commit/diff/rm/reset 以及 index 的概念)
查看>>
DOM Core和HTML DOM的区别
查看>>
SurfaceView+MediaPlay的bug们
查看>>
网络表示学习总结
查看>>