Mybatis特殊字符处理的详解

Mybatis特殊字符处理的详解

前言:

Mybatis特殊字符处理,Mybatis中xml文件特殊字符的处理,这里提供了解决办法及实例,大家可以参考下:

一、问题描述:

查询时,需要获取时间区间内的数据,如下:

<if test="startTime != null" > 
  and l.CREATE_TIME >= #{startTime} 
</if> 
<if test="endTime != null" > 
   and l.CREATE_TIME < #{endTime}  
</if> 

但是,Mybatis中xml 文件中,查询是不能使用小于号(<)的,因为这属于开始标签,是特殊字符 

二、解决方案 

在查询中,使用CDATA包括起来,就能避免特殊字符了。这方法适用所有的特殊字符。

<![CDATA[ 
   
]]> 

示例如下:

<if test="startTime != null" > 
  <![CDATA[ 
    and l.CREATE_TIME >= #{startTime} 
  ]]> 
</if> 
<if test="endTime != null" > 
  <![CDATA[ 
  and l.CREATE_TIME < #{endTime} 
  ]]> 
</if> 

MyBatis返回主键,MyBatis Insert操作返回主键:

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!