当前位置: 首页 > news >正文

MyBatis-XML映射文件

XML映射文件

规范

  • XML映射文件的名称与Mapper接口名称一致(EmpMapper对应EmpMpper.xml),并且将XML映射文件和Mapper接口放置在相同包下(同包同名)

    ​​​

    • 在maven项目结构中所有的配置文件都在resources目录之下,因此要在该目录下创建Mapper接口相同的文件目录,注意在创建目录时要使用/进行目录的分级 

  • XML映射文件的namespace属性与Mapper接口全限定名一致
  • XML映射文件中的SQL语句的id与Mapper接口中的方法名一致,并保持返回类型一致。
    • Mapper接口中的方法名
    •  XML映射文件中的id

    • 设置返回查询结果的返回类型resultType

      • resultType设置的是查询结果单条记录所封装的类型

原理 

在调用某一个Mapper接口中的方法时,就会执行该Mapper接口对应的XML映射文件中的对应的SQL语句

 

如上述3图所示:在调用EmpMapper接口中的List()时,就会执行对应的EmpMapper.xml映射文件中的id=List的SQL语句 

IDEA插件

  • MybatisX是一款基于IDEA的快速开发Mybatis的插件,为效率而生。
  • 在IDEA插件中进行搜索即可
  • 安装成功之后在Mapper接口文件前就会如下图所示

小结

使用注解来映射简单语句会使代码显得更加简洁,但对于稍微复杂一点的语句,Java 注解不仅力不从心,还会让你本就复杂的 SQL 语句更加混乱不堪。 因此,如果你需要做一些很复杂的操作,最好用 XML 来映射语句。

选择何种方式来配置映射,以及认为是否应该要统一映射语句定义的形式,完全取决于你和你的团队。 换句话说,永远不要拘泥于一种方式,你可以很轻松的在基于注解和 XML 的语句映射方式间自由移植和切换。

  1. XML映射文件定义规范
    1. XML文件的名称要与Mapper接口文件的名称一致,并且放在相同的包下(同包同名)
    2. XML文件的namespace属性与Mapper接口全限定名(是指一个类或接口在Java中的完整命名,包括包名和类)一致
    3. XML文件中的SQL语句的id与Mapper接口中的方法名一致

相关文章:

MyBatis-XML映射文件

XML映射文件 规范 XML映射文件的名称与Mapper接口名称一致(EmpMapper对应EmpMpper.xml),并且将XML映射文件和Mapper接口放置在相同包下(同包同名) ​​​ 在maven项目结构中所有的配置文件都在resources目录之下&…...

C++类和对象入门(下)

C类和对象入门 1. Static成员1.1 Static成员的概念2.2 Static成员的特性 2.友元2.1 友元函数2.2 友元函数的特性2.3 友元类 3. 内部类3.1 内部类的概念和特性 4. 匿名对象5. 再次理解类和对象 1. Static成员 1.1 Static成员的概念 声明为static的类成员称为类的静态成员&…...

安卓:实现复制粘贴功能

目录 一、介绍 (一)ClipboardManager介绍 1、ClipboardManager常用方法: 2、获取 ClipboardManager实例 (二)、ClipData介绍 1、创建ClipData对象: 2、获取ClipData的信息: 3、ClipData…...

jenkins pipeline项目

回到目录 将练习jenkins使用pipeline项目,结合k8s发布一个简单的springboot项目 前提:jenkins的环境和k8s环境都已经安装完成,提前准备了gitlab和一个简单的springboot项目 创建一个流水线项目 流水线中选择git,并选择gitlab的…...

机器学习笔记 - YOLO-NAS 最高效的目标检测算法之一

一、YOLO-NAS概述 YOLO(You Only Look Once)是一种对象检测算法,它使用深度神经网络模型,特别是卷积神经网络,来实时检测和分类对象。该算法首次在 2016 年由 Joseph Redmon、Santosh Divvala、Ross Girshick 和 Ali Farhadi 发表的论文《You Only Look Once: Unified, Re…...

Grafana集成prometheus(3.Grafana添加promethus数据)

添加数据库 选择Connections -> Datasources,点击Add New data source,填写Promitheus Server Url,点击 save & test完成配置 添加DashBorad 选择prometheus数据库选择code填入对应的查询公式(监控公式参考Prometheus监控公式)修改面板名称Ti…...

flutter开发实战-实现首页分类目录入口切换功能

。 在开发中经常遇到首页的分类入口,如美团的美食团购、打车等入口,左右切换还可以分页更多展示。 一、使用flutter_swiper_null_safety 在pubspec.yaml引入 # 轮播图flutter_swiper_null_safety: ^1.0.2二、实现swiper分页代码 由于我这里按照一页8…...

基于粒子群改进BP神经网络的时间序列预测,pso-bp时间序列预测

目录 摘要 BP神经网络的原理 BP神经网络的定义 BP神经网络的基本结构 BP神经网络的神经元 BP神经网络的激活函数, BP神经网络的传递函数 粒子群算法的原理及步骤 基于粒子群算法改进优化BP神经网络的时间序列预测 matlab代码 代写下载链接:https://download.csdn.net/downlo…...

std::string和std::wstring无法前向声明

在.h文件中需要声明返回类型为std::string的函数,这时候需要声明一下std::string,但是发现报错了。 这时候查了一下,发现std::string是typedef的,无法前向声明,这时候只能用include。其主要是考虑到如果为了让string前…...

论文阅读-Neighbor Contrastive Learning on Learnable Graph Augmentation(AAAI2023)

人为设计的图增强,可能会破坏原始图的拓扑结构,同时相邻节点被视为负节点,因此被推离锚点很远。然而,这与网络的同质性假设是矛盾的,即连接的节点通常属于同一类,并且应该彼此接近。本文提出了一种端到端的…...

PostgreSql 进程及内存结构

一、进程及内存架构 PostgreSQL 数据库运行时,使用如下命令可查询数据库进程,正对应上述结构图。 [postgreslocalhost ~]$ ps -ef|grep post postgres 8649 1 0 15:05 ? 00:00:00 /app/pg13/bin/postgres -D /data/pg13/data postgres …...

Elasticsearch 常用 HTTP 接口

本文记录工作中常用的关于 Elasticsearch 的 HTTP 接口,以作备用,读者也可以参考,会持续补充更新。开发环境基于 Elasticsearch v5.6.8、v1.7.5、v2.x。 集群状态 集群信息 1 2 3 4 5 6 7http://localhost:9200/_cluster/stats?pretty http…...

games106 homework1实现

games106 homework1 gltf介绍图: 骨骼动画 动画相关属性: 对GLTF的理解参照了这篇文章: glTF格式详解(动画) GLTF文件格式详解 buffer和bufferView对象用于引用动画数据。 buffer对象用来指定原始动画数据, bufferView对象用来引用buff…...

Pytorch使用VGG16模型进行预测猫狗二分类

目录 1. VGG16 1.1 VGG16 介绍 1.1.1 VGG16 网络的整体结构 1.2 Pytorch使用VGG16进行猫狗二分类实战 1.2.1 数据集准备 1.2.2 构建VGG网络 1.2.3 训练和评估模型 1. VGG16 1.1 VGG16 介绍 深度学习已经在计算机视觉领域取得了巨大的成功,特别是在图像分类任…...

安装nvm使用nvm管理node切换npm镜像后使用vue ui管理构建项目成功

如果安装nvm前已经单独安装过node.js的请先自行卸载原有node和环境变量里面的配置; 亲测成功,有哪些问题可以在评论区发消息或者私聊我 1、安装nvm的步骤如下 下载nvm安装包 在nvm的GitHub仓库,如下是国内镜像仓库: 点击这里跳…...

在线LaTeX公式编辑器编辑公式

在线LaTeX公式编辑器编辑公式 在编辑LaTex文档时候,需要输入公式,可以使用在线LaTeX公式编辑器编辑公式,其链接为: 在线LaTeX公式编辑器,https://www.latexlive.com/home 图1 在线LaTeX公式编辑器界面 图2 在线LaTeX公式编辑器…...

【C、C++】学习0

C、C学习路线 C语法:变量、条件、循环、字符串、数组、函数、结构体等指针、内存管理推荐书籍:《C Primer Plus》、《C和指针》、《C专家编程》 CC语言基础C的面向对象(封装、继承与多态)特性泛型模板STL等等推荐书籍(…...

python GUI nicegui初识一(登录界面创建)

最近尝试了python的nicegui库,虽然可能也有一些不足,但个人感觉对于想要开发不过对ui设计感到很麻烦的人来说是很友好的了,毕竟nicegui可以利用TailwindCSS和Quasar进行ui开发,并且也支持定制自己的css样式。 这里记录一下自己利…...

【单片机】51单片机串口的收发实验,串口程序

这段代码是使用C语言编写的用于8051单片机的串口通信程序。它实现了以下功能: 引入必要的头文件,包括reg52.h、intrins.h、string.h、stdio.h和stdlib.h。 定义了常量FSOC和BAUD,分别表示系统时钟频率和波特率。 定义了一个发送数据的函数…...

【bug】记录一次使用Swiper插件时loop属性和slidersPerView属性冲突问题

简言 最近在vue3使用swiper时,突然发现loop属性和slides-per-view属性同时存在启用时,loop生效,下一步只能生效一次的bug,上一步却是好的。非常滴奇怪。 解决过程 分析属性是否使用错误。 loop是循环模式,布尔型。 …...

为什么92%的PHP团队异步化失败?——高并发场景下I/O等待、内存泄漏与协程调度三大暗礁全曝光

第一章:PHP异步I/O的底层本质与失败全景图PHP 传统同步阻塞模型在 I/O 密集型场景中天然受限——每次 socket read/write、数据库查询或 HTTP 请求都会让整个进程挂起,直至内核返回结果。其底层本质并非缺乏异步能力,而是运行时(Z…...

Segment方案在VXLAN分布式网关DCI互联中的实践与优化

1. Segment方案与VXLAN分布式网关的黄金组合 第一次接触Segment方案时,我正面临两个数据中心之间二层网络无法互通的棘手问题。传统方案需要在两端数据中心维护完全一致的VXLAN参数,就像要求两个国家使用相同的邮政编码体系,实际操作中几乎不…...

Win11Debloat:系统焕新提速神器的全方位优化方案

Win11Debloat:系统焕新提速神器的全方位优化方案 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to declutter and customi…...

大数据量的迁移,MySQL 5.x → 8.0 升级设计实施

MySQL 5.x 升级到 8.0 的场景,核心挑战是: 停机窗口控制(全量逻辑导出导入耗时极长) 数据一致性与回滚能力 8.0 新特性兼容性(如保留字、默认认证插件、排序组行为变化) 方案采用 主从复制 + 滚动升级 或 逻辑迁移(mydumper/并行备份) 两种路径,推荐优先使用前者(…...

OpenHand:自适应抓取技术的开源硬件革新

OpenHand:自适应抓取技术的开源硬件革新 【免费下载链接】openhand-hardware CAD files for the OpenHand hand designs 项目地址: https://gitcode.com/gh_mirrors/op/openhand-hardware 在工业自动化与协作机器人领域,传统抓取系统面临着适应性…...

打破Visio格式壁垒:drawio-desktop跨平台解决方案全解析

打破Visio格式壁垒:drawio-desktop跨平台解决方案全解析 【免费下载链接】drawio-desktop Official electron build of draw.io 项目地址: https://gitcode.com/GitHub_Trending/dr/drawio-desktop 当团队协作中Windows用户发送的VSDX文件在macOS或Linux系统…...

2025届毕业生推荐的六大AI辅助写作平台实际效果

Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 作为人工智能技术重要应用的AI写作工具,正逐渐改变内容创作模式,此类…...

手把手教你用Local SDXL-Turbo:从零到一的AI绘画实战

手把手教你用Local SDXL-Turbo:从零到一的AI绘画实战 【一键部署镜像】⚡ Local SDXL-Turbo 基于StabilityAI SDXL-Turbo的毫秒级实时绘画工具 支持流式提示词编辑、所见即所得构图、512512高清输出 想象一下:你刚输入"a futuristic city"&a…...

如何为数字创作者解决广色域显示器色彩失真问题?novideo_srgb的革新性精准色彩映射实践

如何为数字创作者解决广色域显示器色彩失真问题?novideo_srgb的革新性精准色彩映射实践 【免费下载链接】novideo_srgb Calibrate monitors to sRGB or other color spaces on NVIDIA GPUs, based on EDID data or ICC profiles 项目地址: https://gitcode.com/gh…...

突破网盘下载限制:本地安全处理的直链解析方案

突破网盘下载限制:本地安全处理的直链解析方案 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 / 中国移动云盘 / 天翼云盘 / …...