Spring Boot 中使用 MyBatis-Spring-Boot-Starter-程序员宅基地

技术标签: spring boot  mybatis  spring-boot  SpringBoot  

Spring Boot 中使用 MyBatis-Spring-Boot-Starter

本文将使用 MyBatis-Spring-Boot-Starter 在Spring Boot中建立 Mybatis 应用。

本文将实现:

  • 构建一个独立应用
  • 将JDBC模板代码减少到最小值(接近0)
  • 更少的XML配置

版本要求

MyBatis-Spring-Boot-Starter MyBatis-Spring Spring Boot Java
2.2 2.0(2.0.6以上解锁所有功能) 2.5或以上 8或以上
2.1 2.0(2.0.6以上解锁所有功能) 2.1-2.4 8或以上

安装

使用 MyBatis-Spring-Boot-Starter 模组,需要将 mybatis-spring-boot-autoconfigure.jar 文件以及它的依赖(mybatis.jar,mybatis-spring.jar等)添加到classpath中。

Maven

使用Maven构建时,将下述配置添加到 pom.xml

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

Gradle

使用Gradle构建时,将下述配置添加到 build.gradle

dependencies {
  compile("org.mybatis.spring.boot:mybatis-spring-boot-starter:2.2.1")
}

快速部署

在Spring上使用MyBatis,至少需要一个 SqlSessionFactory 以及至少一个 mapper 接口

MyBatis-Spring-Boot-Starter可以:

  • 自动检测一个现存的 DataSource
  • 创建并注册一个 SqlSessionFactory 并将现存的 DataSource 作为 SqlSessionFactoryBean 输入
  • 创建并注册一个从 SqlSessionFactory 得到的 SqlSessionTemplate 实例
  • 自动扫描你的映射器(Mapper),将它们链接到 SqlSessionTemplate,并将它们注册到Spring上下文中,这样它们就可以被注入到你的Bean中。

假设我们有以下的映射器:

@Mapper
public interface CityMapper {
   
    

  
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_35714301/article/details/122308149

智能推荐

Python和MATLAB读取和写入multi-tiff 格式图片(tiff堆栈图)_cv2.imreadmulti-程序员宅基地

文章浏览阅读1.8k次,点赞2次,收藏6次。读取multi-tiff图像cv2from skimage import ioim = io.imread('an_image.tif')imread函数直接将图像加载到numpy数组中。此外,结果数组的尺寸是按顺序排列的(z,y,x),其中z代表深度,y代表高度,x代表宽度。因此,要从堆栈中获取单个切片scikit-imageimport cv2im,mat = cv2.imreadmulti(tif_file_path)..._cv2.imreadmulti

element el-table-column 循环_el-table-column循环-程序员宅基地

文章浏览阅读5.2k次,点赞3次,收藏13次。element el-table-column 循环_el-table-column循环

Ubantu20.04重装后办公环境配置_ubuntu20.04安装有道笔记-程序员宅基地

文章浏览阅读360次。ubantu20.04办公环境配置_ubuntu20.04安装有道笔记

系统平台同一网络下不同设备及进程的话题通讯--DDS数据分发服务中间件-程序员宅基地

文章浏览阅读985次。认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长!本文先对系统平台同一网络下不同设备及进程数据通讯–DDS数据分发服务中间件做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容在分布式系统中,中间件是位于操作系统和用户应用程序之间的软件层,它将操作系统提供的资源进行抽象和封装,为应用程序提供各种各样的高级的服务和功能,比如通信或数据共享。_dds数据分发服务中间件

Fastjson反序列化漏洞复现(实战案例)_fastjsonscan-程序员宅基地

文章浏览阅读1.7w次,点赞12次,收藏81次。漏洞介绍FastJson在解析json的过程中,支持使用autoType来实例化某一个具体的类,并调用该类的set/get方法来访问属性。通过查找代码中相关的方法,即可构造出一些恶意利用链。通俗理解就是:漏洞利用fastjson autotype在处理json对象的时候,未对@type字段进行完全的安全性验证,攻击者可以传入危险类,并调用危险类连接远程rmi主机,通过其中的恶意类执行代码。攻击者通过这种方式可以实现远程代码执行漏洞的利用,获取服务器的敏感信息泄露,甚至可以利用此漏洞进一步对服务器数据_fastjsonscan

开源数据集汇总 | 小目标检测、图像分类、图像识别-程序员宅基地

文章浏览阅读728次,点赞2次,收藏3次。点击上方“小白学视觉”,选择加"星标"或“置顶”重磅干货,第一时间送达宠物图像数据集数据集下载地址:http://m6z.cn/5TAgdC一个包含 37 个类别的宠物数据集,每个类别大约有 200 张图像。这些图像在比例、姿势和照明方面有很大的变化。所有图像都有相关的品种、头部 ROI 和像素级三元图分割的地面实况注释。街景门牌号 (SVHN) 数据集数据集下载地址:http://m6z.cn/..._细粒度分类算法使用的猫数据集

随便推点

selenium模拟登录示例-程序员宅基地

文章浏览阅读6k次,点赞4次,收藏18次。登录blibliselenium自动化测试工具登录页面没有iframe技术,所以不用switch_to.frameimport selenium#package:#common #exceptions #webdriver #chrome #firefox #ie #opera #phantomjs #edge #android #safari #common #action_chains#导入we_selenium模拟登录

算法设计与分析第五章——回溯法课后习题_回溯法课后题-程序员宅基地

文章浏览阅读923次,点赞3次,收藏7次。另外在展示答案代码之前我还有一种想法,我们以每行为一层深度,因为如果某形状某颜色被某格[i][j]选取之后,那么整个i行j列都不能有该形状和该颜色,我们不妨每行的n格看作n次循环,每次我们选取后cc[a[i][j]][b[i][j]]=1,比如现在是cc[1][1]=1,也就是第1行第1格为1。假设男1配女2,即P[1][2]*Q[2][1]不一定是最大的,因为P[1][2]和P[2][1]是不一样的,因此我们还需要交换次序比较P[2][1]*Q[1][2]的大小。既然要遍历矩阵,那么最好是逐行遍历。_回溯法课后题

ebay API 应用之上传商品图片_ebay api 图片上传-程序员宅基地

文章浏览阅读3.2k次。卖东西少不了展示图片,通过api上传图片还是很简单的,用的是UploadSiteHostedPicturesRequestType这个API,图片会在ebay服务器上保存一段时间。首先需要初始化ApiContext,设置appID, certID, devID, userToken, api的相应url,图片服务的url1,初始化ApiContextpublic static _ebay api 图片上传

006人流跟踪pyqt界面_v5_deepsort_人流目标跟踪pyqt-程序员宅基地

文章浏览阅读596次,点赞27次,收藏10次。综合来说,YOLOv5 DeepSORT是一个强大的多目标跟踪系统,通过结合先进的目标检测和跟踪算法,能够在实时视频中准确地检测和跟踪多个目标,具有广泛的应用潜力,包括监控、自动驾驶、人机交互等领域。083基于深度学习的手势识别小程序版本_含10多种模型包括alexnet、DenseNet、DLA、Googl。088基于深度学习的番茄病害检测小程序版本_含10多种模型包括alexnet、DenseNet、DLA、G。049万能图像处理小助手1.1_傅里叶变化_椒盐噪声_直方图均衡等图片批量处理')_人流目标跟踪pyqt

Matlab学习3.1-3.5_matlab lab 3.5-程序员宅基地

文章浏览阅读252次。matlab.m文件的学习一. 语法知识及实例演示。3.1 .matlab.m文件。(1).matlab有1000余条内装函数,这些函数都用后缀为m的文件编写,这些函数只需要学会调用和规则即可使用,省去了编写函数的过程,减轻了许多工作量,在调用函数时,在命令窗口输入函数名即可调用,十分方便。举例如下:(2).实例:解方程y=x^3+6xx+11x+6在这里插入图片描述3.2. 函数m..._matlab lab 3.5

深入理解SLAM技术概述-程序员宅基地

文章浏览阅读4.4k次,点赞6次,收藏20次。SLAM(同步定位和地图绘制)是一种用于自动驾驶车辆的方法,可让您构建地图并同时在该地图中定位您的车辆。SLAM 算法允许车辆绘制未知环境的地图。工程师利用地图信息来执行路径规划和避障等任务。_slam