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

MyBatis(进阶)(xml标签)

本节⽬标

1. 学习MyBatis的动态SQL查询
2. 掌握MyBatis在项⽬中的应⽤, 可以使⽤Spring MVC完成⼀些基础的功能

1. 动态SQL(XML)

动态 SQL 是Mybatis的强⼤特性之⼀,能够完成不同条件下不同的 sql 拼接
可以参考官⽅⽂档: Mybatis动态sql

1.1 <if>标签

注册分为两种字段:必填字段和⾮必填字段,那如果在添加⽤⼾的时候有不确定的字段传⼊,程序应 该如何实现呢?

1.2<trim>标签

之前的插⼊⽤⼾功能,只是有⼀个 gender 字段可能是选填项,如果有多个字段,⼀般考虑使⽤标签结
合标签,对多个字段都采取动态⽣成的⽅式。
标签中有如下属性:
prefix:表⽰整个语句块,以prefix的值作为前缀
suffix:表⽰整个语句块,以suffix的值作为后缀
prefixOverrides:表⽰整个语句块要去除掉的前缀
suffixOverrides:表⽰整个语句块要去除掉的后缀
这个时候就需要使⽤动态标签 来判断了,⽐如添加的时候性别 gender 为⾮必填字段

Mapper.xml实现:

或者使⽤注解⽅式(不推荐)

把上⾯SQL(包括标签), 使⽤ <script></script> 标签括起来就可以

1.3 <where>标签(Select查找)

1.4 <set>标签(uqdata修改)

1.5 <foreach>标签(删除delete多个数据循环操作)

1.6 <include>标签(重复)

案例练习

相关文章:

  • 【Ubuntu】安裝向日葵远程控制
  • React Native基础环境配置
  • 【办公类-99-05】20250508 D刊物JPG合并PDF便于打印
  • CTF之常见的文件头和文件尾
  • LeetCode 3341到达最后一个房间的最少时间 I 题解
  • 前端三大件---CSS
  • CentOS7将yum源更换为阿里源
  • 数据结构*二叉树
  • 基于STM32、HAL库的FT232RL USB转UART收发器 驱动程序设计
  • 【嵌入式开发-UART】
  • Windows系统安装Cursor与远程调用本地模型QWQ32B实现AI辅助开发
  • 预训练模型实战手册:用BERT/GPT-2微调实现10倍效率提升,Hugging Face生态下的迁移学习全链路实践
  • SQL常用操作大全:复制表、跨库查询、删除重复数据
  • 【Yolo精读+实践+魔改系列】Yolov3论文超详细精讲(翻译+笔记)
  • centos搭建dokcer和vulhub
  • 何不乘东风?利用mcp实现小红书自动发布
  • 2025 后端自学UNIAPP【项目实战:旅游项目】3、API接口请求封装,封装后的简单测试以及实际使用
  • 基于FPGA控制ADC0832双通道采样+电压电流采样+LCD屏幕显示
  • TypeScript 中,属性修饰符
  • 解锁跨平台开发的新时代——Compose Multiplatform
  • 新华每日电讯:给“男性妇科病论文”开一剂复方药
  • 联想发布超级智能体矩阵,杨元庆:美国关税影响反映在产品定价上,未来不确定性很大
  • 外交部回应西班牙未来外交战略:愿与之一道继续深化开放合作
  • 专访|李沁云:精神分析不会告诉你“应该怎么做”,但是……
  • 六大车企一季报:比亚迪近92亿净利稳居第一,多家车企营收下滑
  • 越老越妖的库里,成了火箭季后赛里一晃十年的噩梦