在mybatis中sql是写在xml映射文件中的,如果sql中有一些特殊字符的话,在解析xml文件的时候就会被转义,如若不希望被转义,那该怎么办呢?
方法一:使用特殊转义字符
例如,>=开始日期 并且<=结束日期
> > 大于号
< < 小于号
<if test="searchTimeBegin != null and searchTimeBegin != ''">
AND tcci.consume_time >= CONCAT(#{searchTimeBegin},' 00:00:00')
</if>
<if test="searchTimeEnd != null and searchTimeEnd != ''">
AND tcci.consume_time <= CONCAT(#{searchTimeEnd},' 23:59:59')
</if>
符号 | 小于 | 小于等于 | 大于 | 大于等于 | 和 | 单引号 | 双引号 |
---|---|---|---|---|---|---|---|
原符号 | < | <= | > | >= | & | ' | " |
替换符号 | < | <= | > | >= | & | ' | " |
方法二:使用<![CDATA[ ]]>符号
这里面的内容将不被解析
<if test="beginTime!=null">
AND DATE (os.show_start_time) >= DATE(#{beginTime})
</if>
<if test="endTime!=null">
AND DATE (os.show_start_time) <![CDATA[<=]]> DATE(#{endTime})
</if>
在mybatis中<=不能使用,需要使用上面任意一种方法转义,但是>=可以使用!
到此这篇关于mybatis中使用大于小于等于的正确方法的文章就介绍到这了,更多相关mybatis 大于小于等于内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!