Java アプリケーションで時間を管理する最良の方法は何ですか?

StackOverflow https://stackoverflow.com/questions/124299

  •  02-07-2019
  •  | 
  •  

質問

そのため、私は休止状態を使用し、時間を管理するアプリケーションを使用しています。24時間時計で時間を扱う最善の方法は何でしょうか?

このアプリケーションの開始時に TimeZone の問題を心配する必要はありませんが、この機能が最初に組み込まれていることを確認することが最善です。

参考までに、私も休止状態を使用しています

役に立ちましたか?

解決

それらをlong ts = System.currentTimeMillis()として保存します。この形式は UTC で時刻を返すため、実際には TimeZone セーフです。

時刻部分のみが必要な場合は、Hib の組み込み型については知りませんが、独自の型 Time24 を記述するのは簡単です -- org.hibernate.UserType または org.hibernate.CompositeUserType (load=nullSafeGet) のいずれかを実装するだけです。およびその中のstore=nullSafeSetメソッド)。

見る http://docs.jboss.org/hibernate/core/3.3/reference/en/html/mapping.html#mapping-types-custom

しかし、とにかく絶対的な時間を節約したいと思います。将来役立つかもしれません。

追伸以上は、何らかの理由で Date の保存が問題外であることを前提としています。Date の TimeZone は時々邪魔になります。;)

他のヒント

Joda の使用を検討することをお勧めします。 http://joda-time.sourceforge.net/, これは、コアの日付およびカレンダーの実装よりもはるかに直観的で制御可能な時間処理機能を提供します。JSR 310 は実際には、主に Joda に基づく新しい時間 API を Java 7 に組み込むという提案です。Joda は、タイムゾーンに依存する時間処理とタイムゾーンに依存しない時間処理の両方を提供し、間隔を処理する際の困難を軽減します。

java.util.Dateの使用に何か問題がありますか?

java.util.Date 使用すべきです;それほど長くはありません(そして決して長くはありません) Calendar).

注釈を使用している場合は、必ず使用してください @Temporal

最近、JODA に対応していると思われる別のライブラリも見つけました。http://www.date4j.net/

利点はプロジェクトのホームページに記載されています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top