mybatis ![CDATA[ ]] 使用,小於大於號轉義 和小於號大於號使用


CDATA
 在今天使用Mybatis的xml文件中寫sql語句時寫入了一些特殊字符 如 < > & 等,但解析xml文件的時候會被轉義,事實上並不希望它被轉義,可以使用<![CDATA[   sql      ]]>. 這是XML語法,在CDATA內部的所有內容都會被解析器忽略. 但是因此會導致<if test=""></if> <where></where> <choose></choose> <trim></trim>等標簽本身功能失效,所以使用時把帶有特殊字符的語句或字符本身放在<![CDATA[ ]]>內即可,即盡量精確其作用范圍.

代碼如下:

select (
CASE WHEN end_t <![CDATA[<]]> NOW() THEN '已結束' 
     WHEN t2 <![CDATA[>]]> NOW() THEN '未開始' 
     WHEN (t2 <![CDATA[<=]]> NOW() AND end_t <![CDATA[>=]]> NOW()) THEN '進行中' END
) t3,
<include refid="Base_Column_List" />


小於號大於號
mybatis 中 SQL 寫在mapper.xml文件中,而xml解析 < 、>、<=、>= 時會出錯,這時應該使用轉義寫法。

方式一

 

< <= > >= & ' "
&lt; &lt;= &gt; &gt;= &amp; &apos; &quot;
示例:

num &gt;= #{num}

命名由來(gt、lt):
參考:mybatis ![CDATA[ ]] 使用,小於大於號轉義 和小於號大於號使用


免責聲明!

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



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