mybatis时间查询小技巧
网上大多数使用mybatis查询的时候都是把时间转换成Date使用的,其实这里时可以直接使用String的,比如
<if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
AND (a.START_TIME >= #{startTime} AND a.START_TIME <= #{endTime}
OR a.END_TIME >= #{startTime} AND a.END_TIME <= #{endTime})
</if>
但是使用这种方式对String时间的格式有要求,比如如果数据库的时datetime,需要查询startTime和endTime直接的数据,就需要对这两个时间进行类似的处理:
orderParamModel.setStartTime(OrderParamModel.getStartTime()+" 00:00:00");
orderParamModel.setEndTime(OrderParamModel.getEndTime()+" 23:59:59");
这种方法的好处是不用再建立两个Date字段去接收时间,如果你使用的Mapper参数是Map就不用考虑这个问题了,但是如果使用的Bean接受的页面查询参数,这种就有优势。