インターフェース WebMvcConfigurer
@EnableWebMvc
を介して有効化された Spring MVC の Java ベースの構成をカスタマイズするためのコールバックメソッドを定義します。@EnableWebMvc
- アノテーション付きの構成クラスは、このインターフェースを実装してコールバックし、デフォルト構成をカスタマイズする機会を与えられます。
- 導入:
- 3.1
- 作成者:
- Rossen Stoyanchev, Keith Donald, David Syer
メソッドのサマリー
修飾子と型メソッド説明default void
addArgumentResolvers
(ListSE<HandlerMethodArgumentResolver> resolvers) リゾルバーを追加して、カスタムコントローラーメソッドの引数型をサポートします。default void
addCorsMappings
(CorsRegistry registry) 「グローバル」クロスオリジンリクエスト処理を設定します。default void
addFormatters
(FormatterRegistry registry) デフォルトで登録されているものに加えて、Converters
およびFormatters
を追加します。default void
addInterceptors
(InterceptorRegistry registry) コントローラーメソッド呼び出しとリソースハンドラーリクエストの前後処理用に Spring MVC ライフサイクルインターセプターを追加します。default void
addResourceHandlers
(ResourceHandlerRegistry registry) Web アプリケーションルート、クラスパスなどの特定の場所からイメージ、js、css ファイルなどの静的リソースを提供するハンドラーを追加します。default void
カスタムコントローラーメソッドの戻り値の型をサポートするハンドラーを追加します。default void
addViewControllers
(ViewControllerRegistry registry) レスポンスステータスコードおよび / またはビューで事前構成された単純な自動コントローラーを構成して、レスポンス本文をレンダリングします。default void
configureAsyncSupport
(AsyncSupportConfigurer configurer) 非同期リクエスト処理オプションを構成します。default void
コンテンツネゴシエーションオプションを構成します。default void
サーブレットコンテナーの "default" サーブレットに転送して、未処理のリクエストを委譲するハンドラーを設定します。default void
例外リゾルバーを構成します。default void
configureMessageConverters
(ListSE<HttpMessageConverter<?>> converters) HttpMessageConverter
を、リクエスト本文からの読み取りとレスポンス本文への書き込み用に構成します。default void
configurePathMatch
(PathMatchConfigurer configurer) 解析済みPathPatterns
またはPathMatcher
での文字列パターンマッチングを使用するかどうか、末尾のスラッシュを一致させるかどうかなど、HandlerMapping
パスマッチングオプションの構成を支援します。default void
configureViewResolvers
(ViewResolverRegistry registry) ビューリゾルバーを構成して、コントローラーから返された文字列ベースのビュー名を、レンダリングを実行する具体的なView
実装に変換します。default void
デフォルトで構成された例外リゾルバーのリストを拡張または変更します。default void
extendMessageConverters
(ListSE<HttpMessageConverter<?>> converters) configured
またはデフォルトのリストで初期化された後、コンバーターのリストを拡張または変更します。default MessageCodesResolver
データバインディングおよび検証エラーコードからメッセージコードを構築するためのカスタムMessageCodesResolver
を提供します。default Validator
デフォルトで作成されたものではなく、カスタムValidator
を提供します。
メソッドの詳細
configurePathMatch
解析済みPathPatterns
またはPathMatcher
での文字列パターンマッチングを使用するかどうか、末尾のスラッシュを一致させるかどうかなど、HandlerMapping
パスマッチングオプションの構成を支援します。- 導入:
- 4.0.3
- 関連事項:
configureContentNegotiation
コンテンツネゴシエーションオプションを構成します。configureAsyncSupport
非同期リクエスト処理オプションを構成します。configureDefaultServletHandling
サーブレットコンテナーの "default" サーブレットに転送して、未処理のリクエストを委譲するハンドラーを設定します。これの一般的な使用例は、DispatcherServlet
が "/" にマップされ、サーブレットコンテナーの静的リソースのデフォルトの処理がオーバーライドされる場合です。addFormatters
デフォルトで登録されているものに加えて、Converters
およびFormatters
を追加します。addInterceptors
コントローラーメソッド呼び出しとリソースハンドラーリクエストの前後処理用に Spring MVC ライフサイクルインターセプターを追加します。インターセプターは、すべてのリクエストに適用するか、URL パターンのサブセットに限定するように登録できます。addResourceHandlers
Web アプリケーションルート、クラスパスなどの特定の場所からイメージ、js、css ファイルなどの静的リソースを提供するハンドラーを追加します。addCorsMappings
「グローバル」クロスオリジンリクエスト処理を設定します。構成された CORS マッピングは、アノテーション付きコントローラー、関数エンドポイント、静的リソースに適用されます。アノテーション付きコントローラーは、
@CrossOrigin
を介してさらにきめ細かい構成を宣言できます。このような場合、ここで宣言される「グローバル」CORS 構成は、コントローラーメソッドで定義されたローカル CORS 構成を持つcombined
です。addViewControllers
レスポンスステータスコードおよび / またはビューで事前構成された単純な自動コントローラーを構成して、レスポンス本文をレンダリングします。これは、カスタムコントローラーロジックが不要な場合に便利です。ホームページのレンダリング、簡単なサイト URL リダイレクトの実行、HTML コンテンツを含む 404 ステータス、コンテンツのない 204 ステータスなどを返します。configureViewResolvers
ビューリゾルバーを構成して、コントローラーから返された文字列ベースのビュー名を、レンダリングを実行する具体的なView
実装に変換します。- 導入:
- 4.1
addArgumentResolvers
リゾルバーを追加して、カスタムコントローラーメソッドの引数型をサポートします。これは、ハンドラーメソッドの引数を解決するための組み込みサポートをオーバーライドしません。引数解決の組み込みサポートをカスタマイズするには、
RequestMappingHandlerAdapter
を直接構成します。- パラメーター:
resolvers
- 最初は空のリスト
addReturnValueHandlers
カスタムコントローラーメソッドの戻り値の型をサポートするハンドラーを追加します。このオプションを使用しても、戻り値を処理するための組み込みのサポートは無効になりません。戻り値を処理するための組み込みサポートをカスタマイズするには、RequestMappingHandlerAdapter を直接構成します。
- パラメーター:
handlers
- 最初は空のリスト
configureMessageConverters
HttpMessageConverter
を、リクエスト本文からの読み取りとレスポンス本文への書き込み用に構成します。デフォルトでは、Jackson JSON、JAXB2 などの対応するサードパーティライブラリがクラスパスに存在する限り、すべての組み込みコンバーターが構成されます。
このメソッドを使用すると、デフォルトのコンバーターの登録がオフになることに注意してください。ただし、Spring Boot アプリケーションでは、
WebMvcAutoConfiguration
によってHttpMessageConverter
Bean とデフォルトのコンバーターが追加されます。Boot アプリケーションでは HttpMessageConverters を使用します。あるいは、どのようなシナリオでも、extendMessageConverters(java.util.List)
を使用してメッセージコンバーターの構成済みリストを変更します。- パラメーター:
converters
- 最初は空のコンバーターのリスト
extendMessageConverters
configured
またはデフォルトのリストで初期化された後、コンバーターのリストを拡張または変更します。コンバーターの登録順序が重要であることに注意してください。特に、クライアントが
MediaType.ALL
を受け入れる場合は、以前に構成されたコンバーターが優先されます。- パラメーター:
converters
- 拡張する構成済みコンバーターのリスト- 導入:
- 4.1.3
configureHandlerExceptionResolvers
例外リゾルバーを構成します。指定されたリストは空で始まります。空のままにすると、フレームワークはデフォルトのリゾルバーのセットを構成します。
WebMvcConfigurationSupport.addDefaultHandlerExceptionResolvers(List, org.springframework.web.accept.ContentNegotiationManager)
を参照してください。または、例外リゾルバーがリストに追加された場合、アプリケーションが効果的に引き継ぎ、完全に初期化された例外リゾルバーを提供する必要があります。あるいは、
extendHandlerExceptionResolvers(List)
を使用して、デフォルトで構成された例外リゾルバーのリストを継承または変更できます。extendHandlerExceptionResolvers
デフォルトで構成された例外リゾルバーのリストを拡張または変更します。これは、デフォルトの例外リゾルバーを妨げることなく、カスタム例外リゾルバーを挿入できます。- パラメーター:
resolvers
- 拡張する構成済みリゾルバーのリスト- 導入:
- 4.3
- 関連事項:
getValidator
デフォルトで作成されたものではなく、カスタムValidator
を提供します。JSR-303 がクラスパス上にあると仮定した場合のデフォルトの実装は、OptionalValidatorFactoryBean
です。戻り値をnull
のままにして、デフォルトのままにします。getMessageCodesResolver
データバインディングおよび検証エラーコードからメッセージコードを構築するためのカスタムMessageCodesResolver
を提供します。戻り値をnull
のままにして、デフォルトのままにします。