服务器之家

服务器之家 > 正文

mybatis test标签如何判断值是否相等

时间:2021-09-30 01:08     来源/作者:PolarisHuster

mybatis test标签判断值是否相等

mybatis可以很方便生成动态sql,

常用的方式如下:

  1. <if test="id != null and id !=''">
  2. and id != #{id}
  3. </if>

但是在实际使用过程中可能会需要对某个输入的值做具体判断,然后根据输入参数的值进行分支处理

  1. <select id="xxxx" parameterType="map" resultMap="BaseResultMap">
  2. 。。。。。。。
  3. <choose>
  4. <when test="hasAttach.toString() == '1'.toString()">
  5. having attachCount &gt;= #{hasAttach}
  6. </when>
  7. <otherwise>
  8. having attachCount = #{hasAttach}
  9. </otherwise>
  10. </choose>

鉴于这个mapper查询接口传入的参数为Map<String,Object>类型,如果不进行toString的转换的话默认是对进行进行的对比,因此就无法达到预期的比较字符串的效果。

mybatis if test标签、动态sql问题

之前用#{0}和#{1}虽然值能传到后台但一直不能正确校验,怎么改都无法校验成功。

错误代码:

mybatis test标签如何判断值是否相等

这是因为:dao层(或mapper层)中没有用@Param(“”)正确传值。

修改后:

mybatis test标签如何判断值是否相等

mybatis中也把0,1改成@Paran定义的值就可以了:

mybatis test标签如何判断值是否相等

体验:细节很重要,不可忽略。

做毕设,为这个问题纠结两天,网上没有人提到这一点,耽误很久,以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

原文链接:https://jonhuster.blog.csdn.net/article/details/81083694

相关文章

热门资讯

yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
2021年耽改剧名单 2021要播出的59部耽改剧列表
2021年耽改剧名单 2021要播出的59部耽改剧列表 2021-03-05
返回顶部