mybatis中CDATA的使用
阿新 • • 發佈:2018-11-10
在使用mybatis 時我們sql是寫在xml 對映檔案中,如果寫的sql中有一些特殊的字元的話,在解析xml檔案的時候會被轉義,但我們不希望他被轉義,所以我們要使用<![CDATA[ ]]>來解決。
<![CDATA[ ]]> 是什麼,這是XML語法。在CDATA內部的所有內容都會被解析器忽略。
如果文字包含了很多的"<"字元 <=和"&"字元——就象程式程式碼一樣,那麼最好把他們都放到CDATA部件中。
但是有個問題那就是 <if test=""> </if> <where> </where> <choose> </choose> <trim> </trim> 等這些標籤都不會被解析,所以我們只把有特殊字元的語句放在 <![CDATA[ ]]> 儘量縮小 <![CDATA[ ]]> 的範圍。
例項如下:
<select id="allUserInfo" parameterType="java.util.HashMap" resultMap="userInfo1"> <![CDATA[ SELECT newsEdit,newsId, newstitle FROM shoppingGuide WHERE 1=1 AND newsday > #{startTime} AND newsday <= #{endTime} ]]> <if test="etidName!=''"> AND newsEdit=#{etidName} </if> </select>
--------------------- 作者:QH_JAVA 來源:CSDN 原文:https://blog.csdn.net/qh_java/article/details/50755655?utm_source=copy