MyBatis与Spring的整合

news2024/11/30 0:27:02

学习目标:

掌握Spring与MyBatis的集成

掌握使用SqlSessionTemplate实现整合

掌握使用MapperFactoryBean实现整合

掌握Spring的事务切面实现声明式事务处理

掌握使用注解实现声明式事务处理


学习内容:

1.整合思路梳理

思路梳理

以上流程可以全部移交给Spring来处理

读取配置文件、组件的创建、组件之间的依赖关系以及整个框架的生命周期都由Spring容器统一管理

Spring框架整合其他框架的本质就是通过IOC和AOP把其他框架交给Spring框架管理,最终建立一个低耦合的应用架构。

2.Spring和MyBatis的整合步骤

1.创建Web工程,导入Spring和MyBatis的相关依赖

2.建立开发目录结构,创建实体类

  

3.创建数据访问接口和SQL映射语句文件

4.使用Spring配置文件配置数据源

1)步骤

数据源的相关配置信息放到properties文件中维护

采用PropertySourcesPlaceholderConfigurer类加载properties文件

Spring配置文件中采用${xxx}方式引用properties文件中的键值对数据

2)

5.使用Spring配置文件创建SqlSessionFactory

要在Spring中使用MyBatis,需要在Spring的配置文件中定义一些类

5.1.1)SqlSessionFactoryBean

为整合应用提供SqlSession对象资源

5.1.2)SqlSessionTemplate

负责管理MyBatis的SqlSession,调用SQL映射语句,实现对数据库的访问

5.1.3)MapperFactoryBean

根据指定Mapper接口生成Bean实例

5.1.4)MapperScannerConfigurer

根据指定包批量扫描Mapper接口并生成实例

6.配置MyBatis应用配置文件

7.创建数据访问接口的实现类

8.在Spring配置文件中注入SqlSessionTemplate

 8.1通过SqlSessionTemplate操作数据库

MyBatis框架是通过SqlSessionFactory获取操作数据库的SqlSession实例的,而MyBatis-Spring整合包提供了更加简便且强大的SqlSessionTemplate代替SqlSession实现同样的功能。 SqlSessionTemplate类实际上实现了SqlSession接口

9.创建业务接口和业务实现类

 

10.使用单元测试类测试

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/589751.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RHCE 作业二

1. 第一步:配置服务端server 1>安装chrony [rootserver ~]# yum install chrony -y 2>编辑配置文件,修改为阿里的时间服务地址 [rootserver ~]# vim /etc/chrony.conf 3> 重启服务 [rootserver ~]# systemctl restart chronyd 4>测试 5>…

证件照制作教程:如何使用在线工具制作高质量的证件照

证件照制作:让你的形象更加完美 介绍 证件照是人们在日常生活、工作和学习中必不可少的一项证明身份的重要文件。而证件照的质量好坏不仅会直接影响到证件审核的效率,还会影响到自己形象的好坏。为了让自己的形象更加完美,我们需要制作高质…

公网使用SSH远程连接安卓手机Termux - Android手机服务器

文章目录 1.安装ssh2.安装cpolar内网穿透3.远程ssh连接配置4.公网远程连接5.固定远程连接地址 转载自cpolar极点云的文章:公网SSH远程连接Termux – 电脑使用安卓Termux 「无需公网IP」 使用安卓机跑东西的时候,屏幕太小,有时候操作不习惯。不…

Python期末复习题库(下)——“Python”

小雅兰期末加油冲冲冲!!! 1. (单选题)下列关于文件打开模式的说法,错误的是( C )。 A. r代表以只读方式打开文件 B. w代表以只写方式打开文件 C. a代表以二进制形式打开文件 D. 模式中使用时,文件可读可写 2. (单选题)下列选项中,以追加…

【操作系统】04.设备管理

IO软件层次 IO设备 机械部件 分类 设备控制器 寄存器编址 IO控制方式 程序直接控制方式 中断驱动方式 DMA方式 通道控制方式 中断处理程序 设备驱动程序 设备独立性软件 IO调度 设备保护 设备分配与回收 静态分配和动态分配 数据结构 设备分配步骤 改进 缓冲区管理 缓冲区的…

5款冷门小工具,让你的电脑变得与众不同

每个人的电脑中都会安装很多软件,可能还保留着很多不为人知的冷门软件。不过虽然冷门,但绝不意味着低能,相反很多冷门软件的功能十分出色。闲话少说,接下来我就给大家推荐5款冷门小工具,看一看有没有你喜欢的。 1.图标…

供应商评估时要考虑的 5 个关键因素

在任何供应商评估中,无论是新供应商还是现有供应商,衡量其生产能力、业绩、风险、质量和环境影响都很重要。然而,如果没有一个有组织的评估方法和一个较大的框架来使评估信息为你所用,单靠衡量这些因素将无济于事。 为什么要进行…

跨部门沟通:这8条方法和建议,让跨部门协作不再难搞!

想要在公司里做出成绩,跨部门沟通是至关重要的。但是,很多人都会遭遇跨部门协作困难的问题。别担心,我们来给你解决方案! 1.保持开放和透明 让你的队友们知道你的想法和工作计划,让他们能够对你提出反馈意见。 2.要…

点成分享丨ELISA实验的类型及原理

ELISA实验,即酶联免疫吸附测定(Enzyme-Linked Immunosorbent Assay)实验,是免疫学中的经典实验之一,它是一种利用抗原抗体特异性结合进行免疫反应的定性和定量检测方法,目前已被广泛应用于生物学、医学、植…

ai语音机器人接听自动外呼配置

一,添加能转接到机器人的拨号方案 {cti_robot_flow_exists({destination_number})} 这是判断路由条件设置的机器人话术是否存在 cti_robot ${destination_number} 启动机器人流程 set park_timeout3600 设置park最大的时间,机器人和用户最大的通话时间…

ChatGPT智能聊天系统重磅升级!新增分销功能!快来体验吧!

ChatGPT智能聊天系统更新至v1.1.2版本啦~主要更新内容如下: 新增功能 注册账号 生成对话海报 分销功能 支持小程序 会员功能控制 敏感词库 用户支持加入黑名单 后台-用户列表新增用户开通会员的筛选 细节优化 对话内容markdown渲染 用户条数用完&#xf…

性能测评:2核2G4M腾讯云轻量应用服务器CPU内存带宽系统盘

腾讯云轻量2核2G4M服务器配置三年396元,一年112元,一定要选择三年,因为续费比较贵,腾讯云轻量应用服务器具有100%CPU性能,系统盘为50GB SSD盘,4M带宽下载速度512KB/秒,月流量300GB,折…

Spring:什么是Spring框架?①

一、Spring简介由来 技术创新就是为了简化技术开发,无数大师耗费心力目的只有一个,如何让开发更为简洁? Spring应运而生,Spring:泉水,春天。意味让技术开发如春天的泉水那般流畅自然。 二、Spring是什么&am…

Python 华为面试手撕代码 + 八股文,机器学习参数调节,损失函数,激活函数,线程、进程和协程

一、手撕代码:力扣原题905 """ 给定一个非负整数数组 A,返回一个由 A 的所有偶数元素组成的数组,后面跟 A 的所有奇数元素。 基础版:你可以返回满足此条件的任何数组作为答案。 进阶版:要求在当前数组…

Revit问题:创建牛腿柱和快速生成圈梁

一、Revit中如何用体量创建牛腿柱 牛腿:悬臂体系的挂梁与悬臂间必然出现搁置构造,通常就将悬臂端和挂梁端的局部构造,又称梁托。牛腿的作用是衔接悬臂梁与挂梁, 并传递来自挂梁的荷载。牛腿柱可以用于桥梁、厂房的搭建&#xff0c…

C Primer Plus第十三章编程练习答案

学完C语言之后,我就去阅读《C Primer Plus》这本经典的C语言书籍,对每一章的编程练习题都做了相关的解答,仅仅代表着我个人的解答思路,如有错误,请各位大佬帮忙点出! 由于使用的是命令行参数常用于linux系…

机器学习-5 朴素贝叶斯算法

朴素贝叶斯算法 算法概述数理统计学处理的信息古典学派和贝叶斯学派的争论贝叶斯定理朴素贝叶斯分类训练朴素贝叶斯:朴素假设案例:预测打网球拉普拉斯平滑技术小结 算法流程与步骤算法应用sklearn中的朴素贝叶斯朴素贝叶斯的使用算法实例 算法概述 数理…

年营收超1700亿元 中国机器人行业走向更多场景

文 | BFT机器人 中国已经连续九年成为全球最大的工业机器人应用国,同时还是全球机器人第一生产大国,2022年机器人全行业营收超过1700亿元(人民币,下同)。随着《“机器人”应用行动实施方案》的落地,机器人应用的深度和广度加速扩…

网络安全渗透测试常用术语总结!建议收藏!

肉鸡 肉鸡指的就是被黑客成功入侵并取得控制权限的电脑。黑客们可以随意的控制肉鸡,就像在使用自己的电脑一样,很形象的比喻,就像是养的肉鸡,任黑客宰杀和利用。关键的是,在成为肉鸡后,只要黑客不对电脑进…

Vue打包后chunk-vendors.92223bd2.js文件过大解决方案

唠嗑部分 事情的经过是这样的,最近自己玩了一个小系统,使用的是SpringBootVue编写,打包部署后发现页面加载缓慢,打开控制台一看,发现是这家伙在作祟,请看下图 什么鬼,这个js文件2.6M&#xff0…