インターフェース LocaleContextResolver
- すべてのスーパーインターフェース:
LocaleResolver
- すべての既知の実装クラス:
AbstractLocaleContextResolver
、CookieLocaleResolver
、FixedLocaleResolver
、SessionLocaleResolver
豊富なロケールコンテキスト(ロケールおよびタイムゾーン情報を含む可能性がある)のサポートを追加する
LocaleResolver
の拡張。 また、それぞれ resolveLocaleContext(jakarta.servlet.http.HttpServletRequest)
および setLocaleContext(jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse, org.springframework.context.i18n.LocaleContext)
に委譲する resolveLocale(jakarta.servlet.http.HttpServletRequest)
および setLocale(jakarta.servlet.http.HttpServletRequest, jakarta.servlet.http.HttpServletResponse, java.util.Locale)
の default
実装も提供します。
- 導入:
- 4.0
- 作成者:
- Juergen Hoeller, Sam Brannen
- 関連事項:
方法の概要
修飾子と型メソッド説明default LocaleSE
resolveLocale
(HttpServletRequestEE request) resolveLocaleContext(HttpServletRequest)
に委譲し、必要に応じてServletRequest.getLocale()
EE にフォールバックするLocaleResolver.resolveLocale(HttpServletRequest)
のデフォルト実装。resolveLocaleContext
(HttpServletRequestEE request) 指定されたリクエストを介して現在のロケールコンテキストを解決します。default void
setLocale
(HttpServletRequestEE request, HttpServletResponseEE response, LocaleSE locale) void
setLocaleContext
(HttpServletRequestEE request, HttpServletResponseEE response, LocaleContext localeContext) 現在のロケールコンテキストを指定されたものに設定します。潜在的に関連するタイムゾーン情報を持つロケールを含みます。
メソッドの詳細
resolveLocaleContext
指定されたリクエストを介して現在のロケールコンテキストを解決します。これは主にフレームワークレベルの処理を目的としています。現在のロケールやタイムゾーンへのアプリケーションレベルのアクセスには、
RequestContextUtils
またはRequestContext
の使用を検討してください。返されるコンテキストは、タイムゾーン情報が関連付けられたロケールを含む
TimeZoneAwareLocaleContext
である場合があります。instanceof
チェックを適用し、それに応じてダウンキャストするだけです。カスタムリゾルバーの実装は、返されたコンテキストで追加の設定を返すこともありますが、これもダウンキャストを通じてアクセスできます。
- パラメーター:
request
- ロケールコンテキストを解決するためのリクエスト- 戻り値:
- 現在のロケールコンテキスト(非
null
- 関連事項:
setLocaleContext
void setLocaleContext(HttpServletRequestEE request, @Nullable HttpServletResponseEE response, @Nullable LocaleContext localeContext) 現在のロケールコンテキストを指定されたものに設定します。潜在的に関連するタイムゾーン情報を持つロケールを含みます。- パラメーター:
request
- ロケール変更に使用されるリクエストresponse
- ロケール変更に使用されるレスポンスlocaleContext
- 新しいロケールコンテキスト、またはロケールをクリアするnull
- 例外:
UnsupportedOperationExceptionSE
- LocaleResolver 実装がロケールまたはタイムゾーンの動的変更をサポートしていない場合- 関連事項:
resolveLocale
resolveLocaleContext(HttpServletRequest)
に委譲し、必要に応じてServletRequest.getLocale()
EE にフォールバックするLocaleResolver.resolveLocale(HttpServletRequest)
のデフォルト実装。- 次で指定:
- インターフェース
LocaleResolver
のresolveLocale
- パラメーター:
request
- ロケールを解決するためのリクエスト- 戻り値:
- 現在のロケール (非
null
) - 導入:
- 6.0
setLocale
default void setLocale(HttpServletRequestEE request, @Nullable HttpServletResponseEE response, @Nullable LocaleSE locale) SimpleLocaleContext
を使用してsetLocaleContext(HttpServletRequest, HttpServletResponse, LocaleContext)
に委譲するLocaleResolver.setLocale(HttpServletRequest, HttpServletResponse, Locale)
のデフォルト実装。- 次で指定:
- インターフェース
LocaleResolver
のsetLocale
- パラメーター:
request
- ロケール変更に使用されるリクエストresponse
- ロケール変更に使用されるレスポンスlocale
- 新しいロケール、またはロケールをクリアするnull
- 例外:
UnsupportedOperationExceptionSE
- LocaleResolver 実装がロケールの動的変更をサポートしていない場合- 導入:
- 6.0