zoukankan      html  css  js  c++  java
  • Mybatis日期类型的关系判断

    进行时间段的查询时,在mapper文件中直接使用">","<"等关系运算符是无法解析的

    <if test="executeStartDate != null and executeStartDate != ''">
         and execute_time >= to_date(#{executeStartDate},'yyyy-MM-dd HH24:MI:SS')
    </if>
    <if test="executeEndDate != null and executeEndDate != ''">
         and execute_time <= to_date(#{executeEndDate},'yyyy-MM-dd HH24:MI:SS')
    </if>

    解决方法有两种,一种是使用"&gt;","&lt;"来表示大于和小于关系,这样,在解析时,这些特殊字符会被转义成所匹配的运算符

    <if test="executeStartDate != null and executeStartDate != ''">
          and execute_time &gt;= to_date(#{executeStartDate},'yyyy-MM-dd HH24:MI:SS')
    </if>
    <if test="executeEndDate != null and executeEndDate != ''">
          and execute_time &lt;= to_date(#{executeEndDate},'yyyy-MM-dd HH24:MI:SS')
    </if>

    另一种是使用"<![CDATA[   ]]>"来嵌套不需要转义的内容

    <if test="executeStartDate != null and executeStartDate != ''">
         and execute_time <![CDATA[>=]]> to_date(#{executeStartDate},'yyyy-MM-dd HH24:MI:SS')
    </if>
    <if test="executeEndDate != null and executeEndDate != ''">
         and execute_time <![CDATA[<=]]> to_date(#{executeEndDate},'yyyy-MM-dd HH24:MI:SS')
    </if>
  • 相关阅读:
    UI 简单练习(联动实例)
    软件工程与计算机科学
    中文编程
    自我介绍
    曾经的梦想
    即时通讯研究学习
    即时通讯研究学习
    创业
    2015-08-12-火影
    看<后海不是海>的随想
  • 原文地址:https://www.cnblogs.com/zjfjava/p/9180003.html
Copyright © 2011-2022 走看看