在mybatis中sql是寫(xiě)在xml映射文件中的,如果sql中有一些特殊字符的話,例如">","<"和"="等,在解析xml文件的時(shí)候就會(huì)被轉(zhuǎn)義,如若不希望被轉(zhuǎn)義,那該怎么辦呢?下面文章就教大家如何在mybatis中實(shí)現(xiàn)這些特殊字符的方法。
方法一:使用特殊轉(zhuǎn)義字符
例如,>=開(kāi)始日期 并且<=結(jié)束日期
> > 大于號(hào)
< < 小于號(hào)
<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>
符號(hào) | 小于 | 小于等于 | 大于 | 大于等于 | 和 | 單引號(hào) | 雙引號(hào) |
---|---|---|---|---|---|---|---|
原符號(hào) | < | <= | > | >= | & | ' | " |
替換符號(hào) | < | <= | > | >= | & | ' | " |
方法二:使用<![CDATA[ ]]>符號(hào)
這里面的內(nèi)容將不被解析
<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中<=不能使用,需要使用上面任意一種方法轉(zhuǎn)義,但是>=可以使用!
到此這篇關(guān)于mybatis中使用大于小于等于的正確方法的文章就介紹到這了,想要了解更多相關(guān)mybatis的內(nèi)容請(qǐng),搜索W3Cschool以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持!