クラス LocaleContextHolder
inheritable フラグが true に設定されている場合、LocaleContext は現在のスレッドによって生成された子スレッドによって継承されます。必要に応じて、Spring の現在のロケールの主要ホルダーとして使用されます(例: MessageSourceAccessor)。DispatcherServlet は現在のロケールを自動的にここに公開します。他のアプリケーションも公開して、MessageSourceAccessor のようなクラスにそのロケールを自動的に使用させることができます。
- 導入:
- 1.2
- 作成者:
- Juergen Hoeller, Nicholas Williams
- 関連事項:
- メソッドのサマリー修飾子と型メソッド説明- static LocaleSE現在のスレッドに関連付けられているロケールがある場合はそれを返し、そうでない場合はシステムのデフォルトのロケールを返します。- static LocaleSE- getLocale- (LocaleContext localeContext) 指定されたユーザーコンテキストに関連付けられているロケールがある場合はそれを返し、そうでない場合はシステムのデフォルトのロケールを返します。- static LocaleContext現在のスレッドに関連付けられている LocaleContext があれば、それを返します。- static TimeZoneSE現在のスレッドに関連付けられている TimeZone(ある場合)、またはシステムのデフォルトの TimeZone(ある場合)を返します。- static TimeZoneSE- getTimeZone- (LocaleContext localeContext) 特定のユーザーコンテキストに関連付けられている TimeZone(存在する場合)、またはシステムのデフォルト TimeZone を返します。- static void現在のスレッドの LocaleContext をリセットします。- static void- setDefaultLocale- (LocaleSE locale) JVM 全体のデフォルトロケールの代わりに、フレームワークレベルで共有デフォルトロケールを設定します。- static void- setDefaultTimeZone- (TimeZoneSE timeZone) JVM 全体のデフォルトタイムゾーンの代わりに、フレームワークレベルで共有デフォルトタイムゾーンを設定します。- static void指定されたロケールを現在のスレッドに関連付け、すでに設定されている可能性のある TimeZone を保持します。- static void指定されたロケールを現在のスレッドに関連付け、すでに設定されている可能性のある TimeZone を保持します。- static void- setLocaleContext- (LocaleContext localeContext) 指定された LocaleContext を現在のスレッドに関連付けます。子スレッドの継承可能としては公開しません。- static void- setLocaleContext- (LocaleContext localeContext, boolean inheritable) 指定された LocaleContext を現在のスレッドに関連付けます。- static void- setTimeZone- (TimeZoneSE timeZone) 指定された TimeZone を現在のスレッドに関連付け、すでに設定されている可能性のあるロケールを保持します。- static void- setTimeZone- (TimeZoneSE timeZone, boolean inheritable) 指定された TimeZone を現在のスレッドに関連付け、すでに設定されている可能性のあるロケールを保持します。
- メソッドの詳細- resetLocaleContextpublic static void resetLocaleContext()現在のスレッドの LocaleContext をリセットします。
- setLocaleContext指定された LocaleContext を現在のスレッドに関連付けます。子スレッドの継承可能としては公開しません。- 与えられた LocaleContext は - TimeZoneAwareLocaleContextであり、タイムゾーン情報が関連付けられたロケールを含みます。- パラメーター:
- localeContext- スレッドにバインドされたコンテキストをリセットするための現在の LocaleContext または- null
- 関連事項:
 
- setLocaleContext指定された LocaleContext を現在のスレッドに関連付けます。- 与えられた LocaleContext は - TimeZoneAwareLocaleContextであり、タイムゾーン情報が関連付けられたロケールを含みます。- パラメーター:
- localeContext- スレッドにバインドされたコンテキストをリセットするための現在の LocaleContext または- null
- inheritable- LocaleContext を子スレッドの継承可能として公開するかどうか (- InheritableThreadLocalSE を使用する)
- 関連事項:
 
- getLocaleContext現在のスレッドに関連付けられている LocaleContext があれば、それを返します。- 戻り値:
-  現在の LocaleContext、または存在しない場合は null
 
- setLocale指定されたロケールを現在のスレッドに関連付け、すでに設定されている可能性のある TimeZone を保持します。- 指定されたロケールの LocaleContext を暗黙的に作成し、子スレッドの継承可能として公開しません。 - パラメーター:
- locale- 現在のロケール、またはスレッドにバインドされたコンテキストのロケール部分をリセットする- null
- 関連事項:
 
- setLocale指定されたロケールを現在のスレッドに関連付け、すでに設定されている可能性のある TimeZone を保持します。- 指定されたロケールの LocaleContext を暗黙的に作成します。 - パラメーター:
- locale- 現在のロケール、またはスレッドにバインドされたコンテキストのロケール部分をリセットする- null
- inheritable- LocaleContext を子スレッドの継承可能として公開するかどうか (- InheritableThreadLocalSE を使用する)
- 関連事項:
 
- setDefaultLocaleJVM 全体のデフォルトロケールの代わりに、フレームワークレベルで共有デフォルトロケールを設定します。- 注意 : これは、JVM 全体のデフォルトロケールとは異なるアプリケーションレベルのデフォルトロケールを設定できます。ただし、これには、そのような各アプリケーションがローカルにデプロイされた Spring Framework jar に対して動作する必要があります。このようなシナリオでは、サーバーレベルで Spring を共有ライブラリとしてデプロイしないでください。 - パラメーター:
- locale- デフォルトのロケール (なしの場合は- null、ルックアップは- Locale.getDefault()にフォールバックできます)
- 導入:
- 4.3.5
- 関連事項:
 
- getLocale現在のスレッドに関連付けられているロケールがある場合はそれを返し、そうでない場合はシステムのデフォルトのロケールを返します。これは実質的に- Locale.getDefault()の置き換えであり、オプションでユーザーレベルのロケール設定を考慮できます。- 注: このメソッドには、フレームワークレベルまたは JVM 全体のシステムレベルで、共有のデフォルトロケールへのフォールバックがあります。未加工の LocaleContext コンテンツ( - nullを介して特定のロケールがないことを示している可能性がある)を確認する場合は、- getLocaleContext()を使用して- LocaleContext.getLocale()を呼び出します。- 戻り値:
- 現在のロケール、または特定のロケールが現在のスレッドに関連付けられていない場合はシステムのデフォルトのロケール
- 関連事項:
 
- getLocale指定されたユーザーコンテキストに関連付けられているロケールがある場合はそれを返し、そうでない場合はシステムのデフォルトのロケールを返します。これは実質的に- Locale.getDefault()の置き換えであり、オプションでユーザーレベルのロケール設定を考慮できます。- パラメーター:
- localeContext- チェックするユーザーレベルのロケールコンテキスト
- 戻り値:
- 現在のロケール、または特定のロケールが現在のスレッドに関連付けられていない場合はシステムのデフォルトのロケール
- 導入:
- 5.0
- 関連事項:
 
- setTimeZone指定された TimeZone を現在のスレッドに関連付け、すでに設定されている可能性のあるロケールを保持します。- 指定されたロケールの LocaleContext を暗黙的に作成し、子スレッドの継承可能として公開しません。 - パラメーター:
- timeZone- スレッドにバインドされたコンテキストのタイムゾーン部分をリセットするための現在の TimeZone または- null
- 関連事項:
 
- setTimeZone指定された TimeZone を現在のスレッドに関連付け、すでに設定されている可能性のあるロケールを保持します。- 指定されたロケールの LocaleContext を暗黙的に作成します。 - パラメーター:
- timeZone- スレッドにバインドされたコンテキストのタイムゾーン部分をリセットするための現在の TimeZone または- null
- inheritable- LocaleContext を子スレッドの継承可能として公開するかどうか (- InheritableThreadLocalSE を使用する)
- 関連事項:
 
- setDefaultTimeZoneJVM 全体のデフォルトタイムゾーンの代わりに、フレームワークレベルで共有デフォルトタイムゾーンを設定します。- 注意 : これは、JVM 全体のデフォルトタイムゾーンとは異なるアプリケーションレベルのデフォルトタイムゾーンを設定できます。ただし、これには、そのような各アプリケーションがローカルにデプロイされた Spring Framework jar に対して動作する必要があります。このようなシナリオでは、サーバーレベルで Spring を共有ライブラリとしてデプロイしないでください。 - パラメーター:
- timeZone- デフォルトのタイムゾーン (なしの場合は- null、ルックアップは- TimeZone.getDefault()にフォールバックできます)
- 導入:
- 4.3.5
- 関連事項:
 
- getTimeZone現在のスレッドに関連付けられている TimeZone(存在する場合)、またはシステムのデフォルトの TimeZone を返します。これは実質的に- TimeZone.getDefault()の代替であり、オプションでユーザーレベルの TimeZone 設定を考慮できます。- メモ: このメソッドには、フレームワークレベルまたは JVM 全体のシステムレベルのいずれかで、共有のデフォルト TimeZone へのフォールバックがあります。生の LocaleContext コンテンツ( - nullを介して特定のタイムゾーンがないことを示している可能性があります)を確認する場合は、- getLocaleContext()を使用し、- TimeZoneAwareLocaleContextにダウンキャストした後に- TimeZoneAwareLocaleContext.getTimeZone()を呼び出します。- 戻り値:
- 現在の TimeZone、または特定の TimeZone が現在のスレッドに関連付けられていない場合はシステムのデフォルト TimeZone
- 関連事項:
 
- getTimeZone特定のユーザーコンテキストに関連付けられている TimeZone(存在する場合)、またはシステムのデフォルト TimeZone を返します。これは実質的に- TimeZone.getDefault()の代替であり、オプションでユーザーレベルの TimeZone 設定を考慮できます。- パラメーター:
- localeContext- チェックするユーザーレベルのロケールコンテキスト
- 戻り値:
- 現在の TimeZone、または特定の TimeZone が現在のスレッドに関連付けられていない場合はシステムのデフォルト TimeZone
- 導入:
- 5.0
- 関連事項: