My Batis 官方文档 对 动态SQL中使用trim标签的场景及效果介绍比较少。
事实上trim标签有点类似于replace效果。
trim 属性
prefix:前缀覆盖并增加其内容
suffix:后缀覆盖并增加其内容
prefixOverrides:前缀判断的条件
suffixOverrides:后缀判断的条件
比如:
select b.* from sys_menu b where 1 = 1
<trim suffix="WHERE" suffixOverrides="AND | OR">
<if test="id != null and id !='' ">
AND b.id =#{id}
</if>
<if test="name != null">
AND b.menu_name like #{name}
</if>
</trim>
最终sql打印为:
select b.* from sys_menu b where 1 = 1 AND b.menu_name like '' WHERE
从结果可以发现:
<trim suffix="WHERE" suffixOverrides="AND | OR">
suffix是针对符合suffixOverrides的SQL语句追加后缀suffix值。
总而言之:
<trim suffix="WHERE" suffixOverrides="AND | OR">
And sqlxxx
最终结果是:
And sqlxxx WHERE
我不是很确认这种用法的具体场景,但是,就目前mybatis的动态sql语句来看的话,很多标签都足够用了。
分享到:
相关推荐
在实际开发过程中,我们往往需要编写复杂的SQL语句,拼接稍有不注意就会导致错误,Mybatis给开发者提供了动态SQL,大大降低了拼接SQL导致的错误。 动态标签 if标签 if标签通常用那个胡where语句,update语句,insert...
if 、where、set、trim、choose 、foreach等在mybatis中的具体用法,有具体实例可供参考,玩转mybatis
MyBatis 动态 SQL 通过使用 、、、、<trim>、<set> 等标签来实现。以下是一些常见的动态 SQL 标签及其用法,通过组合使用这些标签,可以编写出非常灵活和强大的 SQL 语句,以适应不同的查询和更新需求。
MyBatis 动态 SQL 通过使用 、、、、<trim>、<set> 等标签来实现。附件是一些常见的动态 SQL 标签及其用法,通过组合使用这些标签,可以编写出非常灵活和强大的 SQL 语句,以适应不同的查询和更新需求。
主要介绍了MyBatis动态SQL中的trim标签的使用方法,需要的朋友可以参考下
MyBatis动态SQL则通过标签的形式在XML映射文件中编写,从而避免了手动拼接SQL的麻烦。 MyBatis提供了多种元素来实现动态SQL,如、、、、<trim>、、等。这些元素可以单独使用,也可以组合使用,以实现复杂的动态SQL...
MyBatis动态SQL则通过标签的形式在XML映射文件中编写,从而避免了手动拼接SQL的麻烦。 MyBatis提供了多种元素来实现动态SQL,如、、、、<trim>、、等。这些元素可以单独使用,也可以组合使用,以实现复杂的动态SQL...
MyBatis提供了多种元素来实现动态SQL,如、、、、<trim>、、等。这些元素可以单独使用,也可以组合使用,以实现复杂的动态SQL逻辑。例如,标签可以根据条件判断是否包含某个SQL片段,、、则类似于Java中的switch语句...