第一種方法:
用了轉義字符把>和<替換掉,然后就沒有問題了。
SELECT * FROM test WHERE 1 = 1 AND start_date <= CURRENT_DATE AND end_date >= CURRENT_DATE
附:XML轉義字符
< |
< |
小於號 |
> |
> |
大於號 |
& |
& |
和 |
' |
’ |
單引號 |
" |
" |
雙引號 |
第二種方法:
因為這個是xml格式的,所以不允許出現類似“>”這樣的字符,但是都可以使用<![CDATA[ ]]>符號進行說明,將此類符號不進行解析
mapper文件示例代碼
|
在mybatis 的mapper配置文件sql語句中, 有時用到 大於, 小於等等的比較, 直接寫在里面就被當做標簽的開頭來處理了, 所以不可.現在又2種解決方法:
一, 用<![CDATA[ ]]>標識,例如:
- <if test="menu.authority != null">
- <![CDATA[ and authority < #{menu.authority}]]>
- </if>
其中不但能用大於'>', 小於'<', 小於等於'<=', 大於等於'>=' 也是可以的.
二, 轉義, 例如:
- <if test="menu.authority != null">
- and authority < #{menu.authority}
- </if>
如此這般......
同樣可以可以和等號'='一起來使用, 來表示大於等於, 小於等於等.如
- <if test="menu.authority != null">
- and authority >= #{menu.authority}
- </if>