码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • MyBatis 判断条件为不等于的问题(<if test=“变量!= ‘1‘.toString()“> xxx </if>


    在用MyBatis操作数据库的时候相信很多人都用到,当在判断null, 大于,大于等于,小于,小于等于时,判断条件为不等于或者等于时估计蛮多人遇到坑了。明明看上去代码中传递的值和SQL中if判断的值一致。却不生效。

    当MyBatis 判断条件为等于的时候,常量需要加 .toString() 来转换,这种方法是稳定的,推荐使用

    1. <if test= "object.ifHide != null and object.ifHide != ''
    2. and object.ifHide != '1'.toString()">
    3. and xxx='1'
    4. </if>

    其中判断 ifHide != '1' 时,人为认为成功,但实际上是不成功的,需要改为   ifHide != '1'.toString()方可成功,原因具体没有细入研究,根据实际使用推测应该是 “不等于”和"等于" 在java中是个比较复杂问题,涉及的“等于”有可能是变量地址相等,或者是变量值内容相等,在XML文件中简单的 == 在经过MyBatis处理后无法判断是哪种类型的“相等”,所以加 .toString()做强制转换操作,MyBatis就知道是值内容的比较,当然就成功了; 注意这个常量不限于数字,对于字母,如 'y' 同样需要加上  .toString()方可成功,如下: 

    1. <if test= "object.ifHide != null and object.ifHide != ''
    2. and object.ifHide != 'y'.toString()">
    3. and xxx='1'
    4. </if>

  • 相关阅读:
    ISP代理是什么?双ISP是什么意思?
    基于Hadoop的MapReduce网站日志大数据分析(含预处理MapReduce程序、hdfs、flume、sqoop、hive、mysql、hbase组件、echarts)
    再聊Java Stream的一些实战技能与注意点
    基于Java的在线聊天APP系统分析及设计
    python_函数
    c语言里的位域
    DJYGUI系列文章七:GDD窗口系统
    知识竞赛活动舞台搭建需要多少钱
    冰蝎V4.0攻击来袭,安全狗产品可全面检测
    【C++】BMI身体质量指数计算工具
  • 原文地址:https://blog.csdn.net/y2020520/article/details/128129572
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号