mybatis `if test` 标签判断字符串

错误:

这里mentorType为String类型,运行后发现不生效。后尝试将'1'改为双引号,问题解决。

java 复制代码
<if test="mentorType != null and mentorType!='' and mentorType=='1' ">
       AND u.student_mentor_id = #{searchValue}
</if>

正确写法:

java 复制代码
<if test='mentorType != null and mentorType!="" and mentorType=="1" '>
       AND u.student_mentor_id = #{searchValue}
</if>

搜了一下,不少人遇到这个问题,并提供了另一种解决方法:用单引号时这样写

java 复制代码
'1'.toString()

鉴于能力有限,不能进一步深入研究mybatis <if test>判断原理。下图来自文心一言

相关推荐
见叶之秋20 分钟前
C++ 泛型世界的两块拼图:容器适配器与仿函数
java·开发语言
程序员老赵31 分钟前
Docker 部署 Dolibarr:轻松搭建开源 ERP/CRM 平台
运维·前端·后端
MayBaymax34 分钟前
MQ 基础概念与架构
java·中间件·架构·java-rocketmq
Dovis(誓平步青云)42 分钟前
家里设备越来越多,如何用一张空间地图控制灯光和温度![
android·java·前端·javascript·人工智能·电脑
量化分析码农1 小时前
【Python量化系统工程实战 #06】从本地脚本到云端部署:量化系统的最小可运行架构
后端
136096757231 小时前
页面打不开不是 Nginx 的错
前端·后端
yuniko-n1 小时前
【Java】字符串相关坑点
java·开发语言·python
Terra.K1 小时前
Spring AI day1(SSE+AI)
java·人工智能·spring·springai
ALONE阿龙太原微码1 小时前
RBAC 以及主流权限模型
后端
斑鸠喳喳1 小时前
线程本地存储 ThreadLocal
java·后端