mybatis在xml檔案中處理大於號小於號的方法

2021-08-09 06:46:42 字數 769 閱讀 9336

背景:在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 ...