2013-09-16 15 views
1

我在保存數據時遇到了問題。需要有日期字段在我的實體,但得到錯誤net.java.ao.Entity中的java.util.Date

org.postgresql.util.PSQLException: ERROR: column "TIME" cannot be cast to type timestamp without time zone 

我的實體:

public interface ActivityDays extends Entity{ 

    String getKey(); 
    void setKey(String key); 
    String getUsername(); 
    void setUsername(String userName); 
    Date getDate(); 
    void setDate(Date Date); 
} 

創建日期

Calendar calendar = Calendar.getInstance(); 
calendar.setTimeZone(TimeZone.getDefault()); 
Date date = calendar.getTime(); 

我知道日期(如相同時間戳)沒有按沒有時區。嘗試了很多事情要做。 是否有可能在實體中保存日期(不是長格式)?

+0

一個選項可能是將'CollectionCalendar'類中的日期元素更改爲'java.util.Date' –

+0

我可以爲此鏈接嗎? –

回答

1

我不是100%確定,但我認爲你需要使用java.sql.Timestamp。它有一個構造函數需要幾毫秒的時間:

new java.sql.Timestamp(calendar.getTime().getTime()); 

然後在您的界面上,使用Timestamp而不是Date。

+0

問題解決。 PostgreSQL中的表格無法更新。 +使用的時間戳。謝謝。 –

1

在postgresql中發現舊錶,刪除它們並生成新的。 +使用時間戳而不是日期。現在它可以工作。