Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用时间限制标准_Java_Sql_Hibernate_Time_Criteria - Fatal编程技术网

Java 使用时间限制标准

Java 使用时间限制标准,java,sql,hibernate,time,criteria,Java,Sql,Hibernate,Time,Criteria,我在做一个简单的查询时遇到了一些问题。 我有一个postgresql数据库,有一个时区列 我无法更改此列的类型。另外,我必须使用标准,所以不要告诉我改变这个。然而,如果有一个更好的未来解决方案,而不是使用时间类型,我很好奇 此列映射到java.util.Date属性。这可以改成时间或者别的什么。 我要做的是添加以下内容: Time someTime = someDate.getTime(); criteria.add(Restrictions.eq(propertyName, someTime)

我在做一个简单的查询时遇到了一些问题。 我有一个postgresql数据库,有一个时区列

我无法更改此列的类型。另外,我必须使用标准,所以不要告诉我改变这个。然而,如果有一个更好的未来解决方案,而不是使用时间类型,我很好奇

此列映射到java.util.Date属性。这可以改成时间或者别的什么。 我要做的是添加以下内容:

Time someTime = someDate.getTime();
criteria.add(Restrictions.eq(propertyName, someTime)));
这个条件在应该返回的时候不会返回任何内容。所做的是:用户输入一些字符串time,即解析到的日期,即1970-1-1和时间。然后将此时间添加到标准中。另外,我使用的数据库中的时间作为示例,与解析用户数据时创建的日期(1970-1-1等)相同

我试图搜索一些关于如何在没有时区的情况下使用标准的文档,但没有找到任何内容

为什么会失败


更新:使用库JodaTime解决了该问题。但我仍然不明白为什么失败…

这两次是在同一个瞬间吗?与中一样,它们返回相同的值?是的,fastime和cDate内容完全相同。我用Restrictions.eq将这个限制添加到criteria中,以防万一。我想你的问题是你在比较java.util.Date和java.sql.Date,这两个时间是完全相同的吗?与中一样,它们返回相同的值?是的,fastime和cDate内容完全相同。我用Restrictions.eq将这个限制添加到criteria中,以防万一。我想你的问题是你在比较java.util.Date和java.sql.Date