Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.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 在hibernate和mysql中映射日期_Java_Mysql_Hibernate - Fatal编程技术网

Java 在hibernate和mysql中映射日期

Java 在hibernate和mysql中映射日期,java,mysql,hibernate,Java,Mysql,Hibernate,我们有一个应用程序,其中我们使用hibernate和mysql数据库 我们有一个db脚本import.sql,它有一些insert into语句,我们在db中也有一些日期字段,如start_date end_date,其中我们是默认格式的字符串日期,即YYYY-MM-DD 现在的问题是在检索/比较hibernate显示奇怪行为的日期时,例如假设我们有一个日期2012-01-30,则hibernate以正确的格式读取,即2012年1月30日,但如果我们有一个日期像2012-02-06,则hiber

我们有一个应用程序,其中我们使用hibernate和mysql数据库

我们有一个db脚本import.sql,它有一些insert into语句,我们在db中也有一些日期字段,如start_date end_date,其中我们是默认格式的字符串日期,即YYYY-MM-DD

现在的问题是在检索/比较hibernate显示奇怪行为的日期时,例如假设我们有一个日期2012-01-30,则hibernate以正确的格式读取,即2012年1月30日,但如果我们有一个日期像2012-02-06,则hibernate读取为2012年6月2日。我的比较和检索结果的DAO如下

public final List<Record> getPastRecords(final java.util.Date currentDate) {
List<Record> pastRecord =  session.createCriteria(Record.class)
    .add(Restrictions.lt("endTime", currentDate))
    .setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY).list();
return pastRecord;
}
public final List getPastRecords(final java.util.Date currentDate){
List pastRecord=session.createCriteria(Record.class)
.add(Restrictions.lt(“endTime”,currentDate))
.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY).list();
返回记录;
}

知道我做错了什么吗?

如果没有详细的代码解释,猜测可能是什么问题是非常困难的 这可能是因为
java.util.Date
尝试使用
java.sql.Date
作为调用处理数据库的库的方法/构造函数时,最好使用java.util.Date的包装器,即java.sql.Date


请参阅此属性的hibernate配置是什么?你能分享一下吗?