2017-03-01 5 views
0

この質問にはいくつかのバリエーションがありますが、私は自分の問題の解決策を見つけるのに苦労しています。JPAが12時間前にjava.util.Date()を継続しているように見える理由

私は、JPA、Eclipselink & MySQLベースのアプリケーションを持っています。特定のテーブルでレコードが追加または更新されると、新しいjava.util.Date()を使用して、「更新された」日付フィールドが現在に設定されます。

これは私のエンティティクラスのフィールドです:

@Temporal(TemporalType.TIMESTAMP) 
@Column(name = "Updated", unique = false, nullable = true) 
private Date updated; 

それは、単に次のように設定されている:データベースに設定された日付は常に先行し、12時間であるように思わ何らかの理由

record.setUpdated(new Date()); 

今の?

私は午前/午後のコンバージョン、タイムゾーンの問題、およびチェックされたサーバー時間を考慮していますが、すべて問題はないようです。

これは簡単ですが、私は少し失われている場合はお詫び申し上げます!

+0

変換は常にjava.util.TimeZone.getDefault()によって返されたタイムゾーンを使用して行われます。値が他の設定に対応しているかどうかを確認してください。 – coladict

答えて

0

-Duser.timezoneが設定されている場合は、server.Andのjvmオプションに設定されているかどうかをチェックします。

+0

アイデアをありがとうございますが、タイムゾーンは設定されていません。したがって、jvmがローカルシステムゾーンを取ると仮定します。 – skyman

関連する問題