休眠。检查daterange是否在另一个日期范围内

时间:2012-11-12 07:29:58

标签: java hibernate

这听起来很简单,但我无法绕过它。

我的数据库中有两个字段。 availableFromDate和availableToDate。

用户正在搜索以查找给定范围内的所有可用实体。所以我的行动有两个日期:

searchFromDate和searchToDate。

我需要做的就是返回用户指定的整个时间段内可用的所有实体。

最好使用Criterias。

任何?

1 个答案:

答案 0 :(得分:0)

如果我理解你的问题是正确的 - 也就是说,事件可用性应该完全在搜索日期范围内 - 那么它应该归结为:

如果你确保“availableFromDate.before(availableToDate)”和“searchFromDate.before(searchToDate)” - 在这种情况下你应该做什么 - 那么你的availableFromDate和availableToDate都必须在搜索日期范围内。

您可以使用此答案中的解决方案确保两个日期都在以下范围内:How to compare dates in hibernate

criteria.add(Restrictions.between("availableFromDate", searchFromDate, searchToDate));
criteria.add(Restrictions.between("availableToDate", searchFromDate, searchToDate));