2019独角兽企业重金招聘Python工程师标准>>>

官方文档:

Mybatis开发团队为Spring Boot 提供了 MyBatis-Spring-Boot-Starter 方便使用。

要使用MyBatis-Spring-Boot-Starter模块,只需要在类路径中包含

mybatis-spring-boot-autoconfigure.jar文件及其依赖项(mybatis.jar,mybatis -spring.jar等) 。

下面介绍的是我用到的一部分功能,全部功能还请查阅官方文档

一、使用

如果您正在使用Maven,只需将以下依赖项添加到您的pom.xml中:

<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.0.0-SNAPSHOT</version>
</dependency>

版本自己可选:

需要注意的是:在Spring 中使用mybatis 最少需要 一个SqlSessionFactory 和 mapper 接口

引入MyBatis-Spring-Boot-Starter 模块后 将自动提供以

下功能

  1. 自动检测现有的数据源。
  2. 将创建并注册一个SqlSessionFactory的实例,使用SqlSessionFactoryBean作为输入传递该DataSource
  3. 将创建并注册SqlSessionFactory的SqlSessionTemplate实例。
  4. 自动扫描您的“Mapper”,将它们链接到SqlSessionTemplate并将它们注册到Spring上下文,以便将它们注入到bean中。

就是说,使用了该Starter之后,只需要定义一个DataSource即可,它会自动创建使用该DataSource的SqlSessionFactoryBean以及SqlSessionTemplate,会自动扫描你的Mappers,连接到SqlSessionTemplate,并注册到Spring上下文中。

二 、配置

与其他Spring Boot应用程序一样,MyBatis-Spring-Boot-Application配置参数存储在application.properties(或application.yml)内部。 使用前缀 mybatis

可用的属性有:

  • config-location : MyBatis. xml配置文件的位置。
  • check-config-location: 指示是否执行MyBatis .xml配置文件的存在检查
  • mapper-locations: Mapper. xml配置文件的位置。
  • type-aliases-package : 一般是放在model(或实体类) 上 ,别名替换,默认是去掉包名。
  • type-handlers-package:用于搜索类型处理程序的包所在位置
  • configuration-properties:MyBatis配置的外部化属性。 指定的属性可以用作MyBatis配置文件和Mapper文件的占位符。
  • configuration:一个MyBatis配置bean。 关于可用的属性,请参阅MyBatis参考页面。 注意此属性不能与配置位置(config-location)同时使用。

红色标注为常用属性

例:

# application.properties
mybatis.type-aliases-package=com.example.domain.model
mybatis.type-handlers-package=com.example.typehandler
mybatis.configuration.map-underscore-to-camel-case=true
mybatis.configuration.default-fetch-size=100
mybatis.configuration.default-statement-timeout=30

三、真实使用过程

1、pom中引入 MyBatis-Spring-Boot-Starter

<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.0.0-SNAPSHOT</version>
</dependency>

2、配置数据源

直接在application.properties 中

3、在application.properties 中配置Mapper.xml 的扫描

4、编写Mapper接口,和Mapper.xml

Mapper 接口要加@Mapper 注解

MyBatis-Spring-Boot-Starter将默认搜索标记有@Mapper注解的映射器。

您可能需要指定自定义注解或标记界面进行扫描。 如果是这样,你必须使用@MapperScan注解。

默认不用加这个注解

参考 : https://www.cnblogs.com/larryzeal/p/5874107.html

转载于:https://my.oschina.net/zjllovecode/blog/1609629

Springboot 中 Mybatis 的使用相关推荐

  1. springboot 项目输出 sql 到控制台、 SpringBoot 中 Mybatis 打印 sql

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. SpringBoot中Mybatis打印sql 如果使用的是 application.propert ...

  2. springboot 中 mybatis configuration 配置失效问题

    springboot 中 mybatis configuration 配置失效问题 环境 场景 springboot角度分析 SqlSessionFactory 设置Configuration Myb ...

  3. SpringBoot中Mybatis打印sql日志

    application.yml中加上 # springBoot+Mybatis 控制台打印SQL语句 (方式一) logging:level:com.zoctan.api.mapper : debug ...

  4. SpringBoot中mybatis配置多数据源

    首先需要创建多个数据库 简单的user表 CREATE TABLE `user` (`id` int NOT NULL AUTO_INCREMENT,`name` varchar(255) DEFAU ...

  5. Eclipse中实现SpringBoot与Mybatis整合(图文教程带源码)

    场景 数据库中数据 实现效果 项目结构 前面参照 Eclipse中新建SpringBoot项目并输出HelloWorld https://blog.csdn.net/BADAO_LIUMANG_QIZ ...

  6. springboot中的mybatis是如果使用pagehelper的

    springboot中的mybatis是如果使用pagehelper的 springboot中使用其他组件都是基于自动配置的AutoConfiguration配置累的,pagehelper插件也是一样 ...

  7. springboot基于mybatis扫描jar包中的controller、service、dao、xml

    springboot基于mybatis扫描jar包中的controller.service.dao.xml 最近有这样的需求,是将某个业务模块接口,比如新闻的接口模块 作为一个公共固定的模块,整个包括 ...

  8. springboot项目中mybatis实现数据的基本查询

    SpringBoot项目中mybatis实现数据的基本查询 本章内容概述: mapper 查询 xml 文件基本使用 通过 mybatis 实现一条数据的查询 1 用户数据表 2 用户信息对应的实体类 ...

  9. SpringBoot中关于Mybatis使用的三个问题

    SpringBoot中关于Mybatis使用的三个问题 转载请注明源地址:http://www.cnblogs.com/funnyzpc/p/8495453.html 原本是要讲讲PostgreSQL ...

最新文章

  1. Entropy of Primitive: From Sparse Representation to Visual Information Evaluation(TCSVT2015)
  2. org.activiti.engine.ActivitiException: Couldn't deserialize object in variable 'application'
  3. html定义一个集合,HTML标签属性集合
  4. solr中的ik分词器的原理是什么
  5. boost::endian::detail::is_scoped_enum用法的测试程序
  6. springmvc mybatis 做分页sql 语句
  7. 【POJ - 2486】Apple Tree (树形背包,dp)
  8. Springsecurity之AuthenticationProvider
  9. 阿里巴巴发布第四财季财报 菜鸟驿站包裹量增长100%
  10. wpf 绘制矩形_WPF制作倒影效果
  11. 由数据库对sql的执行说JDBC的Statement和PreparedStatement
  12. 在CentOS 7中安装PHP5和PHP7需要的插件
  13. Swift - 09 - Optionals
  14. php模拟登录其他网站,PHP利用Curl模拟登录并获取数据例子
  15. gdi win7奔溃_gdiplus.dll 32/64位
  16. native2ascii
  17. 黑马程序员Python教程的代码--植物大战僵尸游戏代码
  18. 如何实现一个 Email HTML 邮件模板
  19. 2020.7.16.h5面试题
  20. JDK1.6安装_BouncyCastle JCE扩展加密算法解决JDK1.6 sftp连接openssh8.6Algorithm negotiation fail问题

热门文章

  1. Xcode 5 Error CertUIFramework.axbundle
  2. Linux环境下用OpenJTAG实现Linux内核的源码级调试
  3. PHP也玩并发,巧用curl 并发减少后端访问时间
  4. 关于C语言中的malloc和free函数的用法
  5. System commands can run from cmd
  6. 通过Windows10上的VS Code打开远端Ubuntu上的项目操作步骤
  7. 使用Python3发送邮件测试代码
  8. OpenCV3.3中 K-最近邻法(KNN)接口简介及使用
  9. CImg库中CImg,CImgList,CImgDisplay三个类的介绍
  10. 【FFmpeg】Hello World!尝试如何编译FFmpeg程序