美文网首页
mybatis 使用 转义

mybatis 使用 转义

作者: John_Phil | 来源:发表于2020-05-06 00:18 被阅读0次

一、转义方法介绍

第一种方法:
用了转义字符把>和<替换掉,然后就没有问题了。例如:

SELECT * FROM test WHERE 1 = 1 AND start_date < = CURRENT_DATE AND

end_date >= CURRENT_DATE

常用的转义字符如下:
< < 小于号
> > 大于号
& & 和
' ’ 单引号
" " 双引号
第二种方法:

因为这个是xml格式的,所以不允许出现类似“>”这样的字符,但是都可以使用

<![CDATA[ ]]>符号进行说明,将此类符号不进行解析你的可以写成这个:

mapper文件示例代码

<![CDATA[ when min(starttime)<='12:00' and max(endtime)<='12:00' ]]>

二、两种方式的说明:

在xml格式的文件中,对于“>”、“<”等符号是作为特殊的符号使用的,所以当我们使用

这些符号的时候,往往不会正常的起作用,反而可能产生了语法错误。

而使用第一种方式需要注意以下几个方面:

(1)转义序列字符之间不能有空格;

(2) 转义序列必须以”;”结束;

(3) 单独出现的”&”不会被认为是转义的开始;

(4) 区分大小写。

2.使用<![CDATA[ ]]>符号相对于使用转义符方法来说是更加高效的。因为,转义前的字

符也好,转义后的字符也好,都会被xml解析器解析,而使用<![CDATA[ ]]>符号来包含

不被转义的内容,则是xml解析器能够识别该符号为忽略解析的内容。

另外,使用<![CDATA[ ]]>符号需要注意以下几个方面:

(1) 此部分不能再包含”]]>”;

(2) 不允许嵌套使用;

(3)”]]>”这部分不能包含空格或者换行。

三、比较

最后,说说<![CDATA[]]>和xml转移字符的关系,它们两个看起来是不是感觉功能

重复了?

是的,它们的功能就是一样的,只是应用场景和需求有些不同:

(1)<![CDATA[]]>不能适用所有情况,转义字符可以;

(2) 对于短字符串<![CDATA[]]>写起来啰嗦,对于长字符串转义字符写起来可读性差;

(3) <![CDATA[]]>表示xml解析器忽略解析,所以更快。

相关文章

  • mybatis 09 转义与批量操作

    转义使用mybatis的时候,特殊字符,例如<,>,<>,.....需使用以下进行转义 使用CDATA部件

  • mybatis 使用 转义

    一、转义方法介绍 第一种方法:用了转义字符把>和<替换掉,然后就没有问题了。例如: SELECT * FROM t...

  • 使用注意事项

    1不希望特殊字符被转义时使用.特殊字符被解析时会被转义2是xml语法,在CDATA内部的...

  • MyBatis SQL 符号

    兼容: 或者 mybatis : trim标签, “等于==”经验, CDATA...

  • mybatis学习笔记

    mybatis学习笔记 简介 入门 XML配置 XML 项目相关笔记 在使用myb...

  • 和转义字符

    所有 XML 文档中的文本均会被解析器解析。只有 CDATA 区段(CDATA section)中的文本会被解析器...

  • Mybatis 的转义字符

    mybatis中的转义字符,方便以后自己看一下 也可以使用Mybatis不转译的写法

  • mybatis中符号转译

    java mybatis XML文件中不允许出现">"、"<"之类的符号。需要转义 "="是可以正常使用的

  • mybatis CDATA标签用法

    xml解析不了<= 或 >=,CDATA包裹可以通过解析 上文中begintime参数格式在下面图片中

  • python随笔

    python中字符串不转义 r' ',类似于xml中的。 取字符的整数o...

网友评论

      本文标题:mybatis 使用 转义

      本文链接:https://www.haomeiwen.com/subject/sxvbghtx.html