mybatis的动态sql的一些记录

本文深入探讨MyBatis的动态SQL功能,介绍如何利用if、choose、when、otherwise、trim、where、set、foreach等标签,灵活组合SQL语句,提高开发效率,避免手动拼接SQL带来的错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

动态sql的作用:传统的使用JDBC的方法,相信大家在组合复杂的的SQL语句的时候,需要去拼接,稍不注意哪怕少了个空格,都会导致错误。Mybatis的动态SQL功能正是为了解决这种问题, 其通过 if, choose, when, otherwise, trim, where, set, foreach标签,可组合成非常灵活的SQL语句,从而提高开发人员的效率。


if  :如果存在,就按照
choose-when-otherwise:从其中选择一项,类似于java的switch
where:  只会在至少有一个子元素的条件返回 SQL 子句的情况下才去插入“WHERE”子句
trim : 如果 where 元素没有按正常套路出牌,自定义 trim 元素来定制 where 元素的功能
foreach   :是对一个集合进行遍历,通常用在in后
<include refid=""></include>,引用其他的动态sql片段

 

还有一篇写的很全的关于动态sql的博客,贴在下面:

https://www.cnblogs.com/dongying/p/4092662.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值