我有一個連接到PostgreSQL的Grails 2.5.3應用程序,我想在數據庫中存儲一個java Date
或Calendar
對象,並且包括時區。使用Grails和GORM在PostgreSQL中存儲日期,時間和時區
基礎上PostgreSQL Documentation,默認的時間戳類型不不包括時區,所以你需要使用timestamptz
類型包括時區。
不幸的是,當我試圖在mapping
關閉域類中設置它時,它失敗了。我試圖用這個:
createdDate type: 'timestamptz'
我收到的錯誤是:
nested exception is org.hibernate.MappingException: Could not determine type for: timestamptz
不幸的Hibernate types名單似乎不包括任何可能映射此值。與日期相關的是:date
,time
,timestamp
,calendar
,calendar-date
。我測試了其中的每一個,並且他們都沒有在Postgres中創建想要的timestamp with time zone
。
有些文章談論爲此創建自定義Hibernate UserType
,但它似乎是一個相當常見的用例,我不禁想到有些東西應該讓我得到這個工作的盒子。
您可能能夠將時間戳和時區存儲爲兩個單獨的屬性/列。 –