如何配置ibatis语句带小于号的

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何配置ibatis语句带小于号的相关的知识,希望对你有一定的参考价值。

<isNotEmpty property="docNo" prepend="AND">
DOC_NO <= '#docNo#'
</isNotEmpty>
按如上方式去拼写SQL语句,因为出现小于号所以ibatis配置文件报错,如何解决

IBatis的Mapper配置文件中使用大于号>和小于号<时,要使用
<![CDATA[
sql语句
]]>
来将sql语句括起来,如:
<select id="test_query" parameterType="hashmap" resultType="hashmap">
<![CDATA[
select t.f1,t.f2
from table t
where t.f3 <> 1
]]>
<include refid="test_sql_common" />
</select>

或者:
<select id="searchEventCountBy" resultClass="java.lang.Integer" >
select count(1) as count from BT_Event where alarmClear=0 and <![CDATA[alarmTime >= #fromTime#]]>
</select >
参考技术A

小于号是xml的特殊字符,需要转义。
<![CDATA[ DOC_NO <= #docNo# ]]>

    IBatis的Mapper配置文件中使用大于号>和小于号<时,要使用<![CDATA[。

    <select id="test_query" parameterType="hashmap" resultType="hashmap">。

    <![CDATA[
    select t.f1,t.f2
    from table t
    where t.f3 <> 1
    ]]>

    <include refid="test_sql_common" />
    </select>

    <select id="searchEventCountBy" resultClass="java.lang.Integer" >

    select count(1) as count from BT_Event where alarmClear=0  and   <!

    [CDATA[alarmTime >= #fromTime#]]>

参考技术B 中间那行改成这样就可以了。小于号是xml的特殊字符,需要转义。
<![CDATA[ DOC_NO <= #docNo# ]]>本回答被提问者和网友采纳
参考技术C <![CDATA[< DOC_NO<=#docNo#>]]>

以上是关于如何配置ibatis语句带小于号的的主要内容,如果未能解决你的问题,请参考以下文章

java 如何获取ibatis 配置文件中 执行的 sql语句,带参数.

通过xml处理sql语句时对小于号与大于号的处理转换

如何在struts2+ spring+ ibatis 框架中配置log4j让控制台显示sql语句

ibatis配置文件中update语句的写法?

ibatis中xml文件中sql语句如何把oracle中取出来的数据设为10条

不需要配置log4j , 调试打印ibatis执行的sql语句和参数