Mybatis使用大于等于或小于等于进行比较
Posted 小花皮猪
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mybatis使用大于等于或小于等于进行比较相关的知识,希望对你有一定的参考价值。
前言
今天有一个需求,把之前的判断逻辑进行修改,之前我是用大于(>)小于(<)进行对比的,但是今天让改成大于等于(>=)和小于等于(<=)进行比较
本来以为是一个很简单的操作。
但是还是菜了不少坑的,今天就和大家一起分享下:
常见转义符
常见的一些转义符如下:
前提声明
首先我一开始是大于小于的,就是正常的这样的格式。
然后按照上面的一些转义符,换成ge,le
发现直接报错,或者就是编码不成功,至于这个错怎么解决,我还没有找到解决方案
使用CDATA 区段
然后我就继续想解决办法,最终发现可以使用CDATA 区段进行拼接,而且在CDATA 区段里面还可以不用转义,直接使用原生比较方式即可:
<if test="projectBiddVO.openFlag!=null and projectBiddVO.openFlag!=''">
and open_bidd_time <![CDATA[ >= ]]>now()
</if>
<if test="projectBiddVO.performanceFlag!=null and projectBiddVO.performanceFlag!=''">
and open_bidd_time <![CDATA[ <= ]]> now()
</if>
测试
重启服务,可以看到,按照我们想要的效果进行转义了:
总结
记录一下吧,说不定啥时候又用上了。
以上是关于Mybatis使用大于等于或小于等于进行比较的主要内容,如果未能解决你的问题,请参考以下文章