MyBatis动态SQL中的trim标签的使用方法

发布时间 - 2026-01-11 01:22:22    点击率:

trim标记是一个格式化的标记,可以完成set或者是where标记的功能,如下代码:

  1、 

select * from user 
  <trim prefix="WHERE" prefixoverride="AND |OR">
    <if test="name != null and name.length()>0"> AND name=#{name}</if>
    <if test="gender != null and gender.length()>0"> AND gender=#{gender}</if>
  </trim>

  假如说name和gender的值都不为null的话打印的SQL为:select * from user where    name = 'xx' and gender = 'xx'

  在红色标记的地方是不存在第一个and的,上面两个属性的意思如下:

  prefix:前缀      

  prefixoverride:去掉第一个and或者是or

  2、

update user
  <trim prefix="set" suffixoverride="," suffix=" where id = #{id} ">
    <if test="name != null and name.length()>0"> name=#{name} , </if>
    <if test="gender != null and gender.length()>0"> gender=#{gender} , </if>
  </trim>

  假如说name和gender的值都不为null的话打印的SQL为:update user set name='xx' , gender='xx'     where id='x'

  在红色标记的地方不存在逗号,而且自动加了一个set前缀和where后缀,上面三个属性的意义如下,其中prefix意义如上:

  suffixoverride:去掉最后一个逗号(也可以是其他的标记,就像是上面前缀中的and一样)

  suffix:后缀

以上所述是小编给大家介绍的MyBatis动态SQL中的trim标签的使用方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# mybatis动态sql  # trim  # mybatis的trim标签  # mybatis的动态sql详解(精)  # mybatis动态sql之Map参数的讲解  # MyBatis执行动态SQL的方法  # Mybatis模糊查询和动态sql语句的用法  # Mybatis中的动态SQL语句解析  # MyBatis实践之动态SQL及关联查询  # MyBatis动态SQL标签用法实例详解  # mybatis的动态sql之if test的使用说明  # 详解Mybatis动态sql  # Mybatis超级强大的动态SQL语句大全  # 第一个  # 不存在  # 或者是  # 不为  # 小编  # 是一个  # 在此  # 其他的  # 给大家  # 所述  # 给我留言  # 感谢大家  # 疑问请  # 有任何  # user  # select  # lt  # prefix  # prefixoverride  # java 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Chrome浏览器标签页分组怎么用_谷歌浏览器整理标签页技巧【效率】  如何用景安虚拟主机手机版绑定域名建站?  HTML5建模怎么导出为FBX格式_FBX格式兼容性及导出步骤【指南】  Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】  Laravel如何使用Service Provider注册服务_Laravel服务提供者配置与加载  微信小程序 require机制详解及实例代码  如何在 React 中条件性地遍历数组并渲染元素  如何快速查询网址的建站时间与历史轨迹?  Windows家庭版如何开启组策略(gpedit.msc)?(安装方法)  laravel怎么在请求结束后执行任务(Terminable Middleware)_laravel Terminable Middleware请求结束任务执行方法  Laravel怎么调用外部API_Laravel Http Client客户端使用  Win11关机界面怎么改_Win11自定义关机画面设置【工具】  Laravel定时任务怎么设置_Laravel Crontab调度器配置  JavaScript中的标签模板是什么_它如何扩展字符串功能  Laravel如何连接多个数据库_Laravel多数据库连接配置与切换教程  Linux网络带宽限制_tc配置实践解析【教程】  海南网站制作公司有哪些,海口网是哪家的?  个人摄影网站制作流程,摄影爱好者都去什么网站?  Win11怎样安装网易有道词典_Win11安装词典教程【步骤】  Laravel如何实现密码重置功能_Laravel密码找回与重置流程  Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门  如何在不使用负向后查找的情况下匹配特定条件前的换行符  如何彻底删除建站之星生成的Banner?  宙斯浏览器怎么屏蔽图片浏览 节省手机流量使用设置方法  Linux安全能力提升路径_长期防护思维说明【指导】  java ZXing生成二维码及条码实例分享  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  Laravel辅助函数有哪些_Laravel Helpers常用助手函数大全  大连网站制作公司哪家好一点,大连买房网站哪个好?  Android滚轮选择时间控件使用详解  Laravel如何使用Gate和Policy进行权限控制_Laravel权限判定与策略规则配置  详解jQuery中基本的动画方法  悟空浏览器如何设置小说背景色_悟空浏览器背景色设置【方法】  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  JavaScript如何实现错误处理_try...catch如何捕获异常?  Laravel如何使用Vite进行前端资源打包?(配置示例)  EditPlus中的正则表达式 实战(2)  Laravel怎么做数据加密_Laravel内置Crypt门面的加密与解密功能  Bootstrap整体框架之JavaScript插件架构  如何快速搭建高效WAP手机网站吸引移动用户?  DeepSeek是免费使用的吗 DeepSeek收费模式与Pro版本功能详解  Laravel Seeder怎么填充数据_Laravel数据库填充器的使用方法与技巧  黑客如何利用漏洞与弱口令入侵网站服务器?  Laravel如何实现邮件验证激活账户_Laravel内置MustVerifyEmail接口配置【步骤】  原生JS实现图片轮播切换效果  极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?  如何在云虚拟主机上快速搭建个人网站?  如何用IIS7快速搭建并优化网站站点?  linux写shell需要注意的问题(必看)  使用Dockerfile构建java web环境