Mybatis关于boolean类型if test判断躺坑记录

  • Post author:
  • Post category:其他


在使用Mabatis的时候,经常会用到if test来进行sql语句的拼接,尤其是string类型时候,经常使用<if test=”str != null and str != ””>来判空,但是如果是boolean类型却会导致只有true的时候能进入if,false的时候if永远无法执行

定位过程:

通过配置Mybatis配置打印具体执行的sql语句

mybatis:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

分别执行true和false参数的修改操作,发现两此修改操作,相差一个boolean类型的参数

多次试验还是一样的现象,后来查阅资料发现,是Mybatis的if test语句有问题,如果是boolean类型的参数,在<if test=””>中使用str != ”会导致值为false的时候无法通过判断,后来删除该判断语句就可以了。

具体原因暂时未探索,只记录解决方法,后续探索以后再补充。



版权声明:本文为cl135795680原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。