MyBatis框架基础学习(1)

目录

一、MyBatis框架介绍。

(1)简化开发。

(2)持久层?

(3)框架的解释!

二、JDBC开发缺点。

(1)硬编码。

(2)操作繁琐。

三、MyBatis框架简化点说明。

(1)“硬编码”部分改为使用配置文件。

​编辑

(2)自动设置SQL参数以及自动封装结果集。


一、MyBatis框架介绍。

(1)简化开发。
  • MyBatis是一个优秀的持久层框架。
  • 它对JDBC的操作数据库的过程进行封装。使开发者只需要关注 SQL 本身,而不需要花费精力去处理例如注册驱动、创建connection对象、创建statement对象、手动设置参数、结果集检索等JDBC繁杂的过程代码。

(2)持久层?
  • 负责将数据保存到数据库的那一层代码。(每个部分的代码—>职责单一
  • JavaEE(企业级开发)中的常见四层架构:表现层(页面)、控制层(controller)、业务层(service)、持久层(mapper)。

(3)框架的解释!
  • 框架就是一个半成品软件。是一套可重用的、通用的、软件基础代码模型。
  • “半成品”也就是程序员拿到后,还可以继续编写代码,然后变成“完整”的软件。

  • 这样的开发模式:框架的基础之上构建软件编写更加高效、规范、通用、可扩展性高。
  • 如spring、springboot、mybatis-plus(升级版)等等很多都是框架。使用框架开发,做少量的工作就能完成一个稍加复杂的软件产品。
  • 当然每一个框架都是有自己解决的方向。就如MyBatis框架就是专门用来解决持久层的。其他的如表现层(Vue、element-ui)、控制层与业务层(spring、springboot)等等很多。

二、JDBC开发缺点。

(1)硬编码。
  • 注册驱动(Driver)与获取连接对象(Connection)在JDBC编码中很常见。
  • 通常会直接写很多的字符串,而这些字符串就叫“硬编码”。将字符串的信息写到代码中,而这些字符串信息将来可能会出现变动!而改动就需要重新编译、运行、打包、部署等等。(代码维护性差
  • 注:2025年注册驱动使用的全类名是:com.mysql.cj.jdbc.Driver


(2)操作繁琐。
  • 手动设置参数代码比较繁琐。当SQL语句中的问号多时,手动setter方法需要编写很多!
  • 手动封装结果集的代码繁琐。

三、MyBatis框架简化点说明。

(1)“硬编码”部分改为使用配置文件。
  • 数据库信息配置文件。
  • MyBatis的主配置文件。

  • 将SQL语句“提取”到.xml文件中。


(2)自动设置SQL参数以及自动封装结果集。
  • 因为此地方是查询所有用户,则无参数传递。
  • 使用方法selectList()代替JDBC中的执行指定方法传参、封装结果集等繁琐操作。


  • MyBatis免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

如何有效进行软件集成测试?常见的集成测试工具分享

在现代软件开发的过程中,集成测试是确保系统各部分有效协同工作的关键步骤。软件集成测试是指在软件开发过程中,将各个模块或组件组合在一起进行测试,以验证它们之间的交互是否符合设计要求和业务逻辑。集成测试的核心目标是发现不同模块互动…

电力场效应晶体管(电力 MOSFET),全控型器件

电力场效应晶体管(Power MOSFET)属于全控型器件是一种电压触发的电力电子器件,一种载流子导电(单极性器件)一个器件是由一个个小的mosfet组成以下是相关介绍: 工作原理(栅极电压控制漏极电流&a…

【CES2025】超越界限:ThinkAR推出8小时满电可用的超轻AR眼镜AiLens

在2025年国际消费类电子产品展览会(CES 2025)上,日本AR技术开发商ThinkAR携手超低功耗半导体和边缘AI解决方案提供商Ambiq,共同推出了名为AiLens的最新AR眼镜产品。这款设备不仅具备轻便的设计,而且拥有长达8小时的连续使用时间,为用户带来了前所未有的便捷体验。 AiLen…

记交叉编译asio_dtls过程

虽然编译成功了,但是还是有一些不妥的地方,参考一下就行了。 比如库的版本选择就有待商榷,我这里不是按照项目作者的要求严格用对应的版本编译的,这里也可以注意一下。 编译依赖库asio 下载地址, 更正一下,我其实用…

批处理打开msys2 ucrt64版本qemu 从BIOS模式启动u盘

qemu的msys2版本为qemu官网在windows 平台的推荐。 此处以windows x86_64平台的msys2版本为例子。 一、安装msys2 x86_64版本 官网下载msys2 的x86_64版本安装包安装即可,此处示例安装了支持windows8.1 x86_64和以上的msys2版本。此处示例将msys2安装到windows硬…

windows 安装 mysql 教程

一、下载 点开下面的链接: https://downloads.mysql.com/archives/community/ 点击Download 就可以下载对应的安装包了, 安装包如下: 二、解压 下载完成后我们得到的是一个压缩包,将其解压,我们就可以得到MySQL 8.0.28 的软件本体了(就是…

C语言精粹:深入探索字符串函数

大家好,这里是小编的博客频道 小编的博客:就爱学编程 很高兴在CSDN这个大家庭与大家相识,希望能在这里与大家共同进步,共同收获更好的自己!!! 本文目录 引言正文(1)常见字…

美创科技获浙江省网络空间安全协会年度表彰

近日,浙江省网络空间安全协会第二届理事会第三次会议在杭州隆重召开,会议总结部署工作、表彰先进、分享创新实践成果。 会上,省委网信办副主任马晓军出席会议并致辞、宋皆荣理事长向第二届理事会报告2024年协会工作、常务副理事长单位浙江联通…

基于springboot+vue的古城景区管理系统的设计与实现

开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:…

【R语言】函数

一、函数格式 如下所示: hello:函数名;function:定义的R对象是函数而不是其它变量;():函数的输入参数,可以为空,也可以包含参数;{}:函数体,如果…

PSD是什么图像格式?如何把PSD转为JPG格式?

在图形设计的世界里,Photoshop 文档(PSD)格式是 Adobe Photoshop 的原生文件格式,它允许设计师保存图像中的图层、蒙版、透明度和不同色彩模式等信息。对于需要进一步编辑的设计作品来说,PSD 文件提供了极大的灵活性。…

PIC单片机设置bootloader程序和app程序地址方法

在调试bootloader和app程序的时候通常都需要设置程序的偏移地址,下面就总结一下使用MPLAB X IDE 设置程序地址的方法。 打开bootloader工程 工程上单击鼠标右键,选择Properties,打工工程属性窗口。 此时会打开项目属性对话框 左边类别选择XC8 Line…

电脑办公技巧之如何在 Word 文档中添加文字或图片水印

Microsoft Word是全球最广泛使用的文字处理软件之一,它为用户提供了丰富的编辑功能来美化和保护文档。其中,“水印”是一种特别有用的功能,它可以用于标识文档状态(如“草稿”或“机密”)、公司标志或是版权信息等。本…

程序诗篇里的灵动笔触:指针绘就数据的梦幻蓝图<1>

大家好啊,我是小象٩(๑ω๑)۶ 我的博客:Xiao Xiangζั͡ޓއއ 很高兴见到大家,希望能够和大家一起交流学习,共同进步。 这一节我们来学习指针的相关知识,学习内存和地址,指针变量和地址,包…

WPS计算机二级•幻灯片的页面布局

听说这是目录哦 设置PPT页面尺寸🖼️PPT母版怎么用🎨巧用PPT母版统一修改 字体颜色与背景🎡如何快速更改应用 幻灯片中的不同母版👑能量站😚 设置PPT页面尺寸🖼️ 在制作PPT时,我们需要先选定一…

攻防世界bad_python

文件名pyre.cpython-36.pyc,说明是在python3.6环境下编译的,要把pyc反编译成py 但是显示失败了,结合题的名字文件的应该是文件头部被破坏 把第一行改为33 0D 0D 0A 0C 63 4A 63 61 02 00 00 E3 00 00 00 之后就能反编译了,得到源…

Windows系统Tai时长统计工具的使用体验

Windows系统Tai时长统计工具的使用体验 一、Tai介绍1.1 Tai简介1.2 安装环境要求 二、下载及安装Tai2.1 下载Tai2.2 运行Tai工具 三、Tai的使用体验3.1 系统设置3.2 时长统计3.3 分类管理 四、总结 一、Tai介绍 1.1 Tai简介 Tai是一款专为Windows系统设计的开源软件&#xff…

相同的树及延伸题型(C语言详解版)

从LeetCode 100和101看二叉树的比较与对称性判断 今天要讲的是leetcode100.相同的树,并且本文章还会讲到延伸题型leetcode101.对称二叉树。本文章编写用的是C语言,大家主要是学习思路,学习过后可以自己点击链接测试,并且做一些对…

微信小程序-点餐(美食屋)02开发实践

目录 概要 整体架构流程 (一)用户注册与登录 (二)菜品浏览与点餐 (三)订单管理 (四)后台管理 部分代码展示 1.index.wxml 2.list.wxml 3.checkout.wxml 4.detail.wxml 小结优点 概要…

计算机工程:解锁未来科技之门!

计算机工程与应用是一个充满无限可能性的领域。随着科技的迅猛发展,计算机技术已经深深渗透到我们生活的方方面面,从医疗、金融到教育,无一不在彰显着计算机工程的巨大魅力和潜力。 在医疗行业,计算机技术的应用尤为突出。比如&a…