我有一個Postgres DB,其中有一列名爲t_time
的類型爲timestamp with time zone
。PostgreSQL和Hibernate:如何格式化時間戳輸出?
當我使用psql
工具來查看列的內容,我得到的,例如:
select t_time from table1 where ...
t_time
---------------------
2011-02-28 14:09:25
2011-02-28 14:09:23
這就是我想要的格式。
然而,當我通過我的Java代碼,它使用Hibernate運行相同的選擇查詢,我得到如下:
2011-02-28 14:09:25.0
2011-02-28 14:09:23.0
正如你所看到的,在最後一個點和零添加。
我的問題是 - 如何指定我想要使用的格式?
更改查詢,例如像這樣,
select to_char(t_time, 'YYYY-MM-DD HH24:MI:ss') as t_time from table1 where ...
是可能的,但不期望的,因爲我在代碼的數據查詢幾個地方,我不希望改變他們每個人,我希望這個定義是全系統的。
感謝您的幫助。
編輯:
我想添加一個澄清:當我寫到這,我想編輯映射文件的方向。我認爲可能有一種方法來定義那裏的格式。這意味着只能在一個地方改變,而不是依靠任何默認格式。
謝謝。
什麼是hibernate java數據類型+映射信息? – 2011-02-28 14:05:24
你很樂意改變你的postgres模式,因爲你不想改變你的代碼? – 2011-02-28 14:25:55
@Heiko Rupp:java數據類型是'Timestamp'。 – Dikla 2011-03-01 06:51:53