背景:在mybatis對映檔案中書寫sql語句,where子句中經常會用到大於小於號,如果直接用大於小於號就會報錯
如果用小於號會報錯誤如下:
org.apache.ibatis.builder.builderexception: error creating documentinstance. cause: org.xml.sax.saxparseexception: the content of elementsmust consist of well-formed character data or markup.
大於號不會報錯,但是最好也使用下面的方法解決
解決辦法1:xml特殊字元可以使用轉義字元代替
轉義字元
如果是在動態語句中,則需要轉換
如:
解決辦法2:
使用區,將sql語句包括起來,在兩者之間嵌入不想被解析程式解析的原始資料,解析器不對
cdata
區中的內容進行解析,而是將這些資料原封不動地交給下游程式處理。
標記的sql語句中的、等標籤不會被解析
將其放入到
標籤中如:
mybatis在xml檔案中處理轉義字元
第一種方法 用了轉義字元把 和 替換掉,然後就沒有問題了。select from test where1 1and start date current date and end date current date 附 xml轉義字元 小於號 大於號和 單引號雙引號 第二種方法 因為這個是xml格式...
Mybatis在xml檔案中處理大於號小於號的方法
第一種方法 用轉義字元把 和 替換掉,就沒有問題了。if test starttime null and order date if if test endtime null and order date if 注意下,這裡的starttime,endtime都是date型別的 附 xml轉義字元 ...
mybatis在xml檔案中處理大於號小於號的方法
if 二,轉義,同樣可以可以和等號 一起來使用,來表示大於等於,小於等於等。例如 and authority if mybatis在xml檔案中處理大於號小於號的方法 第一種方法 用了轉義字元把 和 替換掉,然後就沒有問題了。select from test where 1 1 and start ...