Mybatis中动态查询的if test条件判断的单引号和双引号解析问题

Mybatis中动态查询的if test条件判断的单引号和双引号解析问题

就不能用<if test="takeWay == "1"">。takeWay == “1”处出错,导致不执行if判断中的sql,运行程序不报错,没有任何提示。去掉takeWay == “1” and 则可执行。

因为 MyBatis是使用的OGNL表达式,’1’会被解析成字符,java是强类型的,char 和 一个string 会导致不等,所以if标签中的sql不会被解析。 需要改为<if test="takeWay == "1"">或者改为<if test="takeWay == "1".toString() ">


原文链接:https://blog.csdn.net/Quan_qqqq/article/details/86595263