2012-02-07 79 views
0

我們有一個應用程序,我們正在使用與MySQL數據庫休眠。在休眠和mysql映射日期

我們有一個DB腳本import.sql,它有一些插入到語句中,我們也有一些日期字段在db中,比如start_date end_date,其中我們是默認格式的字符串日期,即​​YYYY-MM-DD。

現在問題是在檢索/比較日期冬眠時顯示奇怪的行爲,例如假設如果我們有一個日期2012-01-30然後hibernate讀取正確的格式,即2012年1月30日,但如果我們有一個像日期2012-02-06然後休眠全文06月02日2012年我比較和檢索結果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; 
} 

任何想法,我做錯了什麼?

+0

,這是什麼性質Hibernate配置?你能分享一下嗎? – 2012-02-07 08:58:24

回答

0

沒有詳細的代碼解釋猜測可能是什麼問題,是很難通過我猜 這可能是因爲java.util.Date嘗試使用java.sql.Date當你調用與數據庫更好地使用Java包裝處理庫的方法/構造爲.util.Date是java.sql.Date。

參考http://www.theresearchkitchen.com/archives/58