问题描述:在sql语句中使用<if>
标签和<foreach>
标签动态拼接,如下图:
由于已经使用双引号将<if>
包起来了,在<if>
标签中判断空字符串时需要使用双引号进行转义。
"<if test = 'mbCheck != null and mbCheck != \"\"'>"
运行程序时如果参数mbUnitNature为空,程序也会执行这条语句,<if>
标签中的判断并不起效果。
解决方案:将语句写在<foreach>
标签中,如下图:
再次运行程序就不会出现上述情况了。