当前位置: 代码迷 >> 综合 >> Java查询时间段(startTime--endTime)间的数据
  详细解决方案

Java查询时间段(startTime--endTime)间的数据

热度:82   发布时间:2023-11-07 13:15:57.0

问题1:

判断时间间隔间的数据,就像查询数字一样通过between-and方法进行?

答1:

between-and用于查询数字区间,不用于查询两个时间间隔的内容。非要查询,可以试着把时间格式转换成Long型。

 

 

问题2:

在用postman工具测试后,Java中报异常:(String类型和Date类型比较出现异常)?

异常信息:
### Error querying database.  Cause: java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String
### Cause: java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String
mybatis--xml
<if test="startTime != null and startTime != ''">AND create_time <![CDATA[>=]]> #{startTime}
</if>

答2:

此处的String类型和Date类型比较异常原因:if标签中,Date类型不存在String类型,直接判断就好

<if test="startTime != null">AND create_time <![CDATA[>=]]> #{startTime}
</if>

此时上述问题解决。

 

 

补充:

完整的时间区间比较代码

<where><if test="startTime != null">AND create_time <![CDATA[>=]]> #{startTime}</if><if test="endTime != null">AND create_time <![CDATA[<=]]>#{endTime}</if>
</where>

实体类

//创建时间private Date createTime;//起始时间private Date startTime;//结束时间private Date endTime;

参考链接:https://www.cnblogs.com/kevinZhu/p/6972771.html

  相关解决方案