今天在寫代碼時,由於業務,須要在mybatis中,使用到大於號,小於號,因此就在SQL中直接使用了。
SELECT * FROM test WHERE 1 = 1 AND start_date <= CURRENT_DATE AND end_date >= CURRENT_DATEmybatis
但是,在執行時,總報錯誤:xml
Error creating document instance. Cause: org.xml.sax.SAXParseException; lineNumber: 74; columnNumber: 17; 元素內容必須由格式正確的字符數據或標記組成。
把AND start_date >= CURRENT_DATE AND end_date <= CURRENT_DATE去掉,就沒有問題,因此肯定是由於大於號,小於號引發的問題。
因而就想到了特殊符號,因而用了轉義字符把>和<替換掉,而後就沒有問題了。
SELECT * FROM test WHERE 1 = 1 AND start_date <= CURRENT_DATE AND end_date >= CURRENT_DATEio
附:XML轉義字符test
< < 小於號 date
> > 大於號數據
& & 和co
' ' 單引號字符
" " 雙引號
錯誤