首页 > 其他分享 >mybatis中<![CDATA[]]>的用法

mybatis中<![CDATA[]]>的用法

时间:2024-03-03 22:33:23浏览次数:20  
标签:xml info create 用法 date CDATA mybatis

一、<![CDATA[]]>介绍
在mybatis的xml 映射文件中,如果写的sql中有一些特殊的字符的话,在解析xml文件的时候会被转义,但我们不希望他被转义,所以我们要使用<![CDATA[ ]]>来解决。

<![CDATA[ ]]> 是什么,这是XML语法。在CDATA内部的所有内容都会被解析器忽略。

假如文本包含了很多的"<"字符 <=和"&"字符——就象程序代码一样,那么最好把他们都放到CDATA部件中。

二、注意事项
注意: <if test=""> </if> <where> </where> <choose> </choose> <trim> </trim> 等这些标签在<![CDATA[ ]]>里面都不会被解析,

所以我们只把有特殊字符的语句放在 <![CDATA[ ]]> 外面,尽量缩小 <![CDATA[ ]]> 的范围。

三、使用范例
<select id="getAllInfoList" parameterType="java.util.HashMap" resultMap="staffInfo">
<![CDATA[
SELECT name,info,create_date FROM staff_info WHERE 1=1 AND create_date > #{startTime} AND create_date <= #{endTime}
]]>
<if test="name!=''">
AND name=#{staffName}
</if>
</select>
因为这里有 ">" "<=" 特殊字符所以要使用 <![CDATA[ ]]> 来注释,但是有<if> 标签,所以把<if>等 放外面

标签:xml,info,create,用法,date,CDATA,mybatis
From: https://www.cnblogs.com/zhyp/p/18050901

相关文章

  • 简易MyBatis-plus回顾
    一:要说到plus就得先回顾一下mybatis,我们为什么要要用到mybatis呢我认为大致是两点1.在项目开发中,查询数据库完了后返回值都是实体对象,那么通过mybatis可以实现自动封装这边补充一个当实体类和数据库表不一致时有三种处理方法 a:起别名b:result注解c:开启驼峰映射2.大大简化了......
  • sql语句in的用法(使用多个列进行匹配)
    原文链接:https://www.cnblogs.com/hellohui/p/17670858.html今天遇到了in的新用法,即文中的第四条,使用多个列进行匹配,在此记录下。使用列值列表进行匹配:SELECT*FROM表名WHERE列名IN(值1,值2,值3,...)使用子查询返回多个结果进行匹配:SELECT*FROM表名WHERE......
  • Class.getResource() 和 ClassLoader.getResource()用法
    idea中项目目录结构 importcom.xpp.app.Dog;importjava.net.URL;publicclassMain{publicstaticvoidmain(String[]args){//当参数不带/会默认从该类所在的包下找URLurl1=Dog.class.getResource("");//file:/D:/idea_Java_......
  • 【Mybatis】【三】源码分析- MapperFactoryBean 的创建过程以及 Mapper 接口代理的生
    1 前言本节我们续前两节(调试查看Mapper接口生成过程、源码分析Mapper生成注入入口分析)的内容,看下MapperFactoryBean是如何代理掉我们的@Mapper接口的。上节我们看到我们的Mapper接口的BeanDefinition,已经放进spring的上下文中了,也就是在BeanFactory的BeanDefin......
  • Java Pattern和Matcher处理正则表达式的用法
    转自:https://zhuanlan.zhihu.com/p/626497347 结论:Pattern与Matcher一起合作.Matcher类提供了对正则表达式的分组支持,以及对正则表达式的多次匹配支持.单独用Pattern只能使用Pattern.matches(Stringregex,CharSequenceinput)一种最基础最简单的匹配。java正则表达式通过ja......
  • C++中cin的详细用法
    1.cin简介cin是C++编程语言中的标准输入流对象,即istream类的对象。cin主要用于从标准输入读取数据,这里的标准输入,指的是终端的键盘。此外,cout是流的对象,即ostream类的对象,cerr是标准错误输出流的对象,也是ostream类的对象。这里的标准输出指的是终端键盘,标准错误输出指的是终端的......
  • Linux screen命令的用法
    当谈到在Linux终端中管理会话时,screen是一个非常有用的工具。它允许你在单个终端会话中创建多个虚拟终端,从而可以同时运行多个任务,即使在断开与服务器的连接后也可以保持这些会话。下面是关于screen命令的详细介绍:1.安装和启动screen:通常,screen已经预装在大多数Linux发行版......
  • mybatisPlus分页查询
    配置类:packagecom.oep.backend.config;importcom.baomidou.mybatisplus.annotation.DbType;importcom.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;importcom.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;importo......
  • Flask的CBV用法
    FBV写法fromflaskimportFlask,jsonifyapp=Flask(__name__)[email protected]('/')defindex():return'hello'CBV写法#导入模块fromflask.viewsimportMethodView#固定写法fromflaskimportFlaskapp=Flask(__name__)ap......
  • jq ajax传递json对象到服务端及contentType的用法
    目录0、一般情况下,通过键值对的方式将参数传递到服务端0.1客户端代码:0.2服务端代码:0.3在浏览器的网络中查看此次请求:1、ajax传递复杂json对象到服务端1.1方法一:通过formdata传值,服务端通过key获取值;1.2方法二:通过formdata方式传值,服务端读取Request.InputStrea......