Mybaties咱们常常用到动态SQL,以下咱们利用动态去作判断,这样写固然没问题,可是当咱们不是去判断orgCode(本文中orgCode一直为String类型)是否为空而是判断orgCode是不是一个值的时候该怎么作?java
<if test="orgCode != null and orgCode != ''"> </if>
通常咱们会理所固然的这么写,可是此时就会报Error querying database. Cause: java.lang.NumberFormatException: For input string: "A"spa
这个是由于A加的是单引号,在编译的时候加单引号的A不能被解析为字符串,而被解析为了number类型,形成了以上报错。想要解决问题就要让A在解析的时候被解析的字符串类型,这里有三种方式实现。code
<if test="orgCode != 'A'"> </if>
<if test="orgCode != 'A'.toString()">
"
<if test="orgCode != "'A'"">
<if test='orgCode != "A"'>