ibatis 的<![CDATA[干嘛的

本文介绍了在iBATIS中使用 <![CDATA[ 的目的,它主要用于避免SQL语句中的特殊字符如 <, >, &, ', " 被解析错误。只有在遇到这些特殊字符时才需要使用 <![CDATA[ ]]>。需要注意的是,不应在 <![CDATA[ ]]> 中使用标签,且应限制其使用范围,仅包含真正需要转义的部分。" 119848482,11166448,ROS与Gazebo中Yolo目标检测小车仿真教程,"['ROS仿真', '计算机视觉', '机器人', 'Gazebo模拟', '目标检测']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一直写sql语句都是直接copy,写自己想要的,今天看了下究竟这个<![CDATA[是干嘛的

居然很简单,只是为了让系统知道,并且识别到一些特殊字符,以“]]>”结束

只有以下几种情况才需要,特殊注意,下面说:

< &gt;  小于号

> &lt;  大于号

& & 和

&apos; ' 单引号

" " 双引号

<![CDATA[
select MICRO_TYPE,
MICRO_NO,
TASK_NO
from PA18ACCDATA.PA18_MICRO_BLESS_CONCEIVE
where MICRO_NO >=#MICRO_NO#(比如这个>=)
]]>
<isNotEmpty prepend="and" property="TASK_NO">
TASK_NO = #TASK_NO#
</isNotEmpty>
order by DATE_CREATED desc

但是主要注意的是,不是上面几种特殊情况的,不需要加这个标识,比如:

1,在"<![CDATA["转义符中间不要用标签,会报错,比如<iterate property="tradeNoList" open="(" close=")" conjunction=",">#tradeNoList[]#</iterate>

2,尽量最小范围,用到这几个特殊字符的才用,不能太大的范围用这个,比如下面这个就一句>=,这样比较稳妥

<isNotEmpty prepend="and" property="TASK_NO">

<![CDATA[
TASK_NO >= #TASK_NO#

]]>
</isNotEmpty>



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值