現在、現在のイディオムを使用してUTC DateTimeオブジェクトを作成しています
DateTime now = new DateTime(DateTimeZone.UTC);
デフォルトのコンストラクタを使用してUTCベースのDateTimeオブジェクトを作成できるようにデフォルトにする方法はありますか?
DateTime now = new DateTime();
Joda時間のデフォルトのタイムゾーンのみを設定する場合は、 DateTimeZone.setDefault
。
whole jvmが使用するタイムゾーンを変更する場合は、 TimeZone.setDefault
メソッド。 joda時間でキャッシュできるため、早めに設定してください。 DateTimeZone.getDefault から引用:
デフォルトのタイムゾーンは、システムプロパティuser.timezoneから派生します。それがnullまたは有効な識別子でない場合、JDK TimeZoneのデフォルトの値が変換されます。それが失敗した場合、UTCが使用されます。
余分な文字が本当に心配な場合は、ヘルパーメソッドを作成します。
public static DateTime newUTCDateTime() {
return new DateTime(DateTimeZone.UTC);
}