Java でのデフォルトのタイムゾーンが正しくない問題を解決する方法
特定のシナリオでは、Java アプリケーションで JVM のタイムゾーンがデフォルトで GMT になるという問題が発生することがあります。オペレーティング システム (OS) で定義されたタイムゾーン。これにより、日付と時刻が正しく処理されない可能性があります。
このようなインスタンスの 1 つは、Windows Server Enterprise (2007) で実行されている Java Development Kit (JDK) バージョン 1.5 で発生します。 OS で中部タイムゾーンを指定しているにもかかわらず、アプリケーションは GMT 時刻を返します。
この問題に対処するには、アプリケーション内からタイムゾーンを変更する必要はありません。代わりに、次の JVM パラメータを渡すことができます:
-Duser.timezone
例:
-Duser.timezone=Europe/Sofia
Thisパラメータは、デフォルトの GMT タイムゾーンをオーバーライドして、JVM のユーザー定義のタイムゾーンを設定します。さらに、環境変数 TZ (Linux の場合) を設定することでも問題を解決できる可能性があります。
このパラメータを指定すると、JVM が OS 定義のタイムゾーンを使用するようになり、Java で正しい日付と時刻が処理されるようになります。プログラム。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3