MyBatis入门如何使用操作数据库及常见错误(yml配置)
一,什么是MyBatis
是一款优秀的持久层框架,用于简化jdbc的开发
持久层:指的就是持久化操作的层,通常也就是数据访问层(dao),也就是用来操作数据库。

也就是MyBatis是让你更加简单完成程序与数据库的交互,也就是更加简单的读取和操作数据库。
二,MyBatis入门
操作数据库步骤:
创建spring boot工程,数据库准备好
引入MyBatis相关依赖。
编写SQL语句
2.1项目创建
跟之前创建的步骤一样,但选择配置文件的时候,选择这两个,导⼊mybatis的起步依赖、mysql的驱动包
这样在创建完成之后,会在pom文件中自动导入依赖,就不用你关注了。
2.2数据准备
也就是在数据库中把自己要用到的数据准备上,也就是MySQL的使用。
输入数据之后再配置相应的yml来调用数据库,代码如下:
spring:datasource:url: jdbc:mysql://127.0.0.1:3306/java_blog_spring?characterEncoding=utf8&useSSL=falseusername: rootpassword: 20030218driver-class-name: com.mysql.cj.jdbc.Driver
mybatis:configuration:map-underscore-to-camel-case: true #配置驼峰⾃动转换log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #打印sql语句mapper-locations: classpath:mapper/**Mapper.xml#设置⽇志⽂件的⽂件名
logging:file:name: spring-blog.log
注意要修改成自己的密码哦。
三,操作数据库时容易发生的错误
1.SQL语句错误

2.配置信息错误(一般是密码问题)

3.url错误(未配置数据库)

4.数据库不存在(检查数据库与url数据库名是否一致)
5.表不存在

6.方法名重复(会调用失败)
四,CRUD(注解方法实现)
1.增

2.删
3.改
4.查

5.#和$的区别
1.sql注入问题,$可以被注入,有风险。
注入原因:
# 进行预编译sql,采用占位的方式。
$ 直接拼接,有被注入的风险
2.#比$性能更高一点,想用的时候取出来就行了。
3.排序功能#不能实现,只能$来。
五,CRUD(xml实现)
配置xml,上面的yml文件中已经有xml基础了,直接创建xml进入配置:

1.增
2.删

3.改
4.查

相关文章:
MyBatis入门如何使用操作数据库及常见错误(yml配置)
一,什么是MyBatis 是一款优秀的持久层框架,用于简化jdbc的开发 持久层:指的就是持久化操作的层,通常也就是数据访问层(dao),也就是用来操作数据库。 也就是MyBatis是让你更加简单完成程序与数…...
大数据信用查询什么样的平台比较靠谱?
随着互联网的发展和普及,大数据技术逐渐应用到各行各业中,其中之一就是信用查询领域,大数据信用查询平台能够为用户提供全面、准确的大数据信用评估,然而,由于市场上出现了许多不同的大数据信用查询平台,我…...
后端程序员常犯的错误-本地缓存相关bug和技术思考
1 springboot集成本地缓存基本常识: SpringBoot集成本地缓存性能之王Caffeine示例详解 SpringBoot 缓存之 Cacheable介绍 2 线上问题 2.1 发现过程 接口内的rpc调用报错,error级别的日志被监控平台报警。 2.2 故障排查 2.2.1 代码 Cacheable(cach…...
【收集表单数据】
07 【收集表单数据】 在 React 里,HTML 表单元素的工作方式和其他的 DOM 元素有些不同,这是因为表单元素通常会保持一些内部的 state。例如这个纯 HTML 表单只接受一个名称: <form><label>名字:<input type"text"…...
【前端面试】九、框架
目录 1 Vue2 实现方式 2 Vue3 实现方式 3 React 实现方式 4 Angular 实现方式 1 Vue2 实现方式 Vue2 是目前仍被广泛使用的前端框架之一,其特点包括响应式数据绑定、组件化开发等。 响应式系统:Vue2 使用 Object.defineProperty 来实现数据的响应式。…...
水泥电阻在电源电路中的作用
水泥电阻是将电阻线绕在无碱性耐热瓷件上,外面加上耐热、耐湿及耐腐蚀之材料保护固定并把绕线电阻体放入方形瓷器框内,用特殊不燃性耐热水泥充填密封而成。水泥电阻的外侧主要是陶瓷材质(一般可分为高铝瓷和长石瓷)。 水泥电阻器…...
报销管理软件怎么选?主流的10款对比
国内外排名前十的报销软件大对比:合思、Zoho Expense、金蝶财务报销系统、每刻报销、慧算账、Expensify、齐业成、汇联易、分贝通、QuickBooks Online。 在小型企业中,报销管理可能还可以由财务人员手工完成。然而,对于中到大型企业和快速发展…...
人工智能对就业产生怎样的影响?
在这个飞速发展的时代,人工智能(AI)如同一股不可阻挡的潮流,深刻地影响着我们的工作方式和生活模式。它既是技术革命的产物,也是推动社会进步的重要力量。然而,随着AI技术的普及和应用,关于其对…...
Vue Router 路由守卫详解
Vue Router 的路由守卫功能使我们能够在路由导航的不同阶段执行代码,提供了极大的灵活性和控制力。路由守卫可以帮助我们在用户导航到特定路由之前、之后或取消导航时执行逻辑,例如权限验证、数据获取或取消操作等。 路由守卫类型 Vue Router 提供了以下几种类型的路由守卫…...
Android 10.0 Launcher 启动流程
在前面SystemUI启动流程中说到,在SystemServer中会去启动各种系统服务,这里的launcher也是启动的其中一个服务ActivityManagerService去启动的。在android10之前,系统四大组件的启动都是在ActivityManagerService中,在android10中…...
OPenCV高级编程——OpenCV视频读写及录制技术详解
目录 引言 一、视频读取技术 VideoCapture 类 构造函数 常用方法 二、视频写入技术 VideoWriter 类 构造函数 常用方法 三、视频录制技术 1. 包含OpenCV头文件 2. 初始化VideoCapture对象 3. 设置视频编码器 4. 读取和写入视频帧 5. 释放资源 6. 编码格式选择 …...
jenkins获取sonarqube质量门禁结果
前景 在使用 Jenkins 集成 SonarQube 时,获取质量门禁(Quality Gate)结果非常重要。SonarQube 的质量门禁是一种质量控制机制,用于评估代码质量是否符合预设的标准。以下是获取质量门禁结果的意义和作用: 评估代码质量…...
【AI-12】浅显易懂地说一下损失函数
什么是损失函数? 咱们可以把损失函数想象成一个衡量你做的事情“好不好”的尺子。 比如说你在预测明天的天气,你给出的预测结果和实际的天气情况之间会有差别。损失函数就是用来计算这个差别有多大的。 如果你的预测结果和实际情况非常接近,…...
Python和java中super的使用用法(有点小语法上的差距,老忘就在这里置顶了)
文章目录 1 在 Java 中:2 在 Python 中: 在 Java 和 Python 中,子类调用父类方法的语法略有不同: 1 在 Java 中: 使用 super 关键字:在子类中,可以使用 super 关键字来调用父类的方法。super …...
在 QML 中使用 C++ 类和对象
1.实现 C 类,从 QObject 或 QObject 的派生类继承 类中第一行添加 Q_OBJECT 宏 2.修饰成员函数或属性 Q_INVOKABLE 宏用来定义可通过元对象系统访问的方法 Q_PROPERTY 宏用来定义可通过元对象系统访问的属性 信号或者槽,都可以直接在 QML 中访问 3. 在…...
什么是接口?
在前后端开发的语境中,接口(Interface)是一个非常重要的概念,它充当了前端(通常是浏览器端或移动端应用)与后端(通常是服务器端的应用程序)之间进行数据交换的桥梁。接口定义了双方交…...
传统自然语言处理(NLP)与大规模语言模型(LLM)详解
自然语言处理(NLP)和大规模语言模型(LLM)是理解和生成人类语言的两种主要方法。本文将介绍传统NLP和LLM的介绍、运行步骤以及它们之间的比较,帮助新手了解这两个领域的基础知识。 传统自然语言处理(NLP&…...
实现Obsidian PC端和手机端(安卓)同步
步骤 1:在PC端设置Obsidian 安装Obsidian和Git:确保你的PC上已经安装了Obsidian和Git。你可以从Obsidian官网和Git官网下载并安装。 克隆GitHub代码库:在PC上打开命令行(例如Windows的命令提示符或Mac/Linux的终端)&a…...
基于大模型的 Agent 进行任务规划的10种方式
基于大模型的 Agent 基本组成应该包含规划(planning),工具(Tools),执行(Action),和记忆(Memory)四个方面,本节将从 Agent 的概念、ReAct 框架、示例、以及一些论文思路来具体聊下任务规划的话题,…...
计算机网络01
文章目录 浏览器输入URL后发生了什么?Linux 系统是如何收发网络包的?Linux 网络协议栈Linux 接收网络包的流程Linux 发送网络包的流程 浏览器输入URL后发生了什么? URL解析 当在浏览器中输入URL后,浏览器首先对拿到的URL进行识别…...
3步实现手游PC级操控:QtScrcpy键鼠映射技术全解析
3步实现手游PC级操控:QtScrcpy键鼠映射技术全解析 【免费下载链接】QtScrcpy Android实时投屏软件,此应用程序提供USB(或通过TCP/IP)连接的Android设备的显示和控制。它不需要任何root访问权限 项目地址: https://gitcode.com/barry-ran/QtScrcpy …...
PECVD vs 磁控溅射:氮化硅薄膜制备工艺全解析(附击穿场强测试数据)
PECVD与磁控溅射:氮化硅薄膜工艺的深度博弈与性能优化 在半导体器件制造和MEMS传感器领域,氮化硅薄膜作为关键功能材料,其介电性能和结构特性直接影响器件可靠性。当前工业界主要采用等离子体增强化学气相沉积(PECVD)和…...
不止于读写:在HC32F460上为FATFS和SDIO驱动添加调试信息与性能测试
HC32F460深度优化:FATFS与SDIO驱动的调试技巧与性能压测实战 当你的HC32F460开发板已经能够读取SD卡文件时,真正的挑战才刚刚开始。那些隐藏在初始化失败、数据错位、速度瓶颈背后的秘密,往往需要更精密的调试手段才能揭开。本文将带你超越基…...
仿真模型中硅胶减震器的特征频率与谐振频率的受力分析
COMSOL仿真模型硅胶减震器减振器特征频率谐振频率受力分析仿真模型最近在研究硅胶减震器的特性,发现用COMSOL来仿真这东西还挺有意思的。硅胶减震器嘛,主要就是用来减振的,比如在一些精密仪器或者机械设备上,防止振动对设备造成损…...
手把手教你用YOLOv5训练自己的交通标志数据集(从LabelImg标注到模型部署)
从零构建YOLOv5交通标志检测器的实战指南 在自动驾驶和智能交通系统快速发展的今天,准确识别道路标志已成为计算机视觉领域的重要应用场景。不同于传统图像处理方法,基于深度学习的目标检测技术能够适应复杂环境变化,而YOLOv5以其卓越的速度-…...
终极Windows内存清理指南:如何用Mem Reduct让系统永远流畅运行
终极Windows内存清理指南:如何用Mem Reduct让系统永远流畅运行 【免费下载链接】memreduct Lightweight real-time memory management application to monitor and clean system memory on your computer. 项目地址: https://gitcode.com/gh_mirrors/me/memreduct…...
viem ABI工具使用教程:编码、解码和类型推断全攻略
viem ABI工具使用教程:编码、解码和类型推断全攻略 【免费下载链接】viem TypeScript Interface for Ethereum 项目地址: https://gitcode.com/gh_mirrors/vi/viem viem是一个轻量级、可组合且类型安全的TypeScript以太坊接口工具库,其强大的ABI工…...
Vision-Agents:构建下一代实时视觉AI代理的终极指南
Vision-Agents:构建下一代实时视觉AI代理的终极指南 【免费下载链接】Vision-Agents Open Vision Agents by Stream. Build Vision Agents quickly with any model or video provider. Uses Streams edge network for ultra-low latency. 项目地址: https://gitco…...
老王-你驾驭不住的东西才会显相
你驾驭不住的东西,才会显相 ——展现即风险,驾驭方为道“大象无形。” 真正强大的人,从不轻易显相—— 因为显,即招;露,即险。⚠️ 你想展现什么,就必须能驾驭什么。🔥 六大展现&…...
大模型进阶必看:Agent Skills如何让AI开发更标准化、可复用?速收藏!
随着AI应用开发成熟,工具调用经历了Function Calling、MCP协议到Agent Skills三个阶段。Agent Skills通过文件系统原生设计,将指令、工作流和资源打包成可复用模块,革新上下文管理,实现代码即工具,摆脱供应商锁定。它使…...



