• 请不要在回答技术问题时复制粘贴 AI 生成的内容
cway
V2EX  ›  程序员

MyBatis 有问<if test="param!=null">问题

  •  
  •   cway · Aug 8, 2019 · 4950 views
    This topic created in 2644 days ago, the information mentioned may be changed or developed.

    如题: 我发现 param 传参为带空格的字符串它也不走上述条件中的,也就是说 它也将为空格的参数也当 null 进行处理了。以前我还会多加了 param!=''的条件,看来以前有点多此一举啊,直接判断不等于 null 就行了。v2 的大佬们请问是这样的么?

    12 replies  •  2019-08-08 18:48:00 +08:00
    mosesyou
    mosesyou
    Aug 8, 2019
    1
    我记得是空格不是 null
    cway
    cway
    OP
    Aug 8, 2019
    2
    @mosesyou 如果空格不是 null 应该会进去以上这个条件呀!

    然后我又发现如果 if test="param!=null||param!=‘’ " 。

    这个条件反而能进来,这样就奇怪了,空格是区别于 null 的单独的存在嘛,空格虽然不是 null 但也不会进!=null 的条件
    cway
    cway
    OP
    Aug 8, 2019
    3
    加了几个条件又进去了,晚上下班回去研究下这个问题
    kkkkkrua
    kkkkkrua
    Aug 8, 2019
    4
    你第二个条件肯定能进去啊。不应该是&&?
    空格,空字符串,null,属于不同的值
    LeeSeoung
    LeeSeoung
    Aug 8, 2019
    5
    与 或 不是 and or 么 ?你用||?
    piaoxue
    piaoxue
    Aug 8, 2019
    6
    不是用 and 么
    mineqiqi
    mineqiqi
    Aug 8, 2019
    7
    string 类型的''和 null 不可能是同一个条件
    weo0
    weo0
    Aug 8, 2019
    8
    难道不是 and 或者 or ?
    cweijan
    cweijan
    Aug 8, 2019
    9
    空格不为 null, 醒醒
    wr410
    wr410
    Aug 8, 2019
    10
    <if test=" clearBankCardNo != null and clearBankCardNo != '' " >

    无责任项目直接拷贝(坏笑)
    beetlerx
    beetlerx
    Aug 8, 2019
    11
    <if test="param != null &amp;&amp; !param.isEmpty()">
    我都是这么用的
    javaWeber
    javaWeber
    Aug 8, 2019
    12
    类似 <if test=" clearBankCardNo != null and clearBankCardNo != '' " > 这种 mybatis 代码 。。

    我有时会想,一个空格没问题,那要是传两个三个空格,这代码还能跑通么?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2978 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 43ms · UTC 10:55 · PVG 18:55 · LAX 02:55 · JFK 05:55
    ♥ Do have faith in what you're doing.