MyBatis Plus Mapper.xml映射文件常用标签<if>、<foreach>、#{}、${}等 您所在的位置:网站首页 sortntr MyBatis Plus Mapper.xml映射文件常用标签<if>、<foreach>、#{}、${}等

MyBatis Plus Mapper.xml映射文件常用标签<if>、<foreach>、#{}、${}等

2024-01-28 09:07| 来源: 网络整理| 查看: 265

一、判断 Integer、Long 等常数类参数

and tstc.Integer = #{Integer}

注意:判断常数类参数,只能判断 != null,不能判断 != '' 否则判断不会生效

二、判断 String 字符串类参数

and t.field = #{str}

注意:判断字符串类参数可以判断 != ''

三、判断参数值与指定的值,是否相等或不相等

//判断常数类型 and t.Long = #{Long} and t.Long = #{Long} //判断字符串类型 and t.str = #{str} and t.str = #{str}

注意: 1、判断 Integer、Long 等常数类型等于某个值,值不需要加引号 2、判断 String 字符串类型等于某个值,值需要加单引号,并且用 .toString() 转成字符串类型条件才会生效

四、判断 List、Set 集合类参数

and t.id in #{item}

注意: 1、判断集合类参数,判断 != null 的同时一定要判断 lists.size() > 0 2、否则 lists 集合不为 null 但集合中没有元素,也会进入循环是有问题的

五、大于、小于等特殊字符转义写法

and date_format(t.date, '%Y-%m-%d') ;= date_format(#{date}, '%Y-%m-%d')

注意: 1、入参属性类型为date类型,只需要判断 != null 即可 2、;= 为大于等于、;= 为小于等于,还有其他转义写法自行查阅

六、#{}、${} 获取参数的区别及使用场景

//一般常规入参使用 #{} 占位符即可 and t.str = #{str} //特殊情况可以使用 ${} 拼接 order by t.sort_num, t.${sortStr} ${sortType}

注意: 1、#{} 是占位符,${} 是拼接参数 2、常规获取参数使用 #{} 占位符即可,特殊情况也可以使用 ${} 拼接(例如根据多字段排序,需要使用 ${} 直接拼接,使用 #{} 不生效会报错) 3、当使用 #{} 占位符不生效或报错的情况下,直接使用 ${} 拼接即可



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有