mybatis大於小於的轉義


今天在寫代碼時,因為業務,需要在mybatis中,使用到大於號,小於號,所以就在SQL中直接使用了。
SELECT * FROM test WHERE 1 = 1 AND start_date <= CURRENT_DATE AND end_date >= CURRENT_DATE

可是,在執行時,總報錯誤:

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_DATE

附:XML轉義字符

                 &lt;           <      小於號                                           
                 &gt;          >    大於號
                 &amp;       &      和
                 &apos;     '   單引號
                 &quot;     "     雙引號

 

原文鏈接:https://blog.csdn.net/gisredevelopment/article/details/27870833


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM