<![CDATA[ ]]>的简单使用

作用

在mybatis、ibatis等书写SQL的xml中比较常见,是一种XML语法,他的作用是 可以忽略xml的转义(在该标签中的语句和字符原本是什么样的,在拼接成SQL后还是什么样的)
使用:
select * from user 
	where isDeleted = 0 
	<if test=" age != 0 ">
		<![CDATA[ and  age < 18 ]]>
	</if>

如上SQL :遇到 < 特殊字符需要转义为 <,因为有的特殊字符xml不识别,会直接报异常,因此会使用到 ,由它包裹的SQL和特殊字符将忽略转义,最后拼接为SQL语句select * from user where isDeleted = 0 and age < 18

注意:
	1.使用动态SQL时要像if、foreach、where等标签一但被 <![CDATA[ ]]>标签包裹,将忽略xml的解析并出错
	2.<![CDATA[ ]]>标签中不可嵌套<![CDATA[ ]]>标签
	3.<![CDATA[ ]]>尽量缩小范围,以免出错

你可能感兴趣的:(日常小记录,sql,xml)