在项目中学习到的一种常见的关于时间的条件查询实现方法
1.在html中加入输入框,这里是easyui的时间框
<td>
<input class="easyui-datetimebox" data-options="prompt:'开始时间'" name="integralmallOrder.cTimeStart" id="cTimeStart" placeholder="开始时间" style="width:150px"/>
至
<input class="easyui-datetimebox" data-options="prompt:'结束时间'" name="integralmallOrder.cTimeEnd" id="cTimeEnd" placeholder="结束时间" style="width:150px"/> 
</td>
2.在vo中加入
/**
* 申请时间 db_column: CREATE_TIME
*/
private java.util.Date createTime;
private Date cTimeStart;
private Date cTimeEnd;
public java.util.Date getCreateTime() {
return this.createTime;
}
public void setCreateTime(java.util.Date createTime) {
this.createTime = createTime;
}
public Date getcTimeStart() {
return cTimeStart;
}
public void setcTimeStart(Date cTimeStart) {
this.cTimeStart = cTimeStart;
}
public Date getcTimeEnd() {
return cTimeEnd;
}
public void setcTimeEnd(Date cTimeEnd) {
this.cTimeEnd = cTimeEnd;
}
3.在mapper中加入
<sql id="where">
<where>
//省略其余字段......
<if test="paramBean != null and @Ognl@isNotEmpty(paramBean.createTime)"> AND CREATE_TIME = #{paramBean.createTime} </if>
<if test="paramBean != null and @Ognl@isNotEmpty(paramBean.cTimeStart)"><![CDATA[ AND CREATE_TIME >= DATE_FORMAT(#{paramBean.cTimeStart},'%Y-%m-%d %H:%i:%s') ]]></if>
<if test="paramBean != null and @Ognl@isNotEmpty(paramBean.cTimeEnd)"><![CDATA[ AND CREATE_TIME <= DATE_FORMAT(#{paramBean.cTimeEnd},'%Y-%m-%d %H:%i:%s') ]]></if>
//省略其余字段......
</where>
</sql>
<select id="findPage" resultMap="xxxVO">
SELECT * FROM INTEGRALMALL_ORDER
<include refid="where"/>
</select>
在点击查询后将数据放入vo,然后调用findPage方法就好啦,具体实现就不赘述啦