Mybatis中的<![CDATA[ ]]>语法

          在今天使用Mybatis的xml文件中写sql语句时写入了一些特殊字符 如 < > & 等,但解析xml文件的时候会被转义,事实上并不希望它被转义,可以使用<![CDATA[ ]]>. 这是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" />


猜你喜欢

转载自blog.csdn.net/qq_39028580/article/details/78989224