アノテーションインターフェース EnableWebMvc
@RetentionSE(RUNTIMESE)
@TargetSE(TYPESE)
@DocumentedSE
@Import(DelegatingWebMvcConfiguration.class)
public @interface EnableWebMvc
このアノテーションを
@Configuration
クラスに追加すると、WebMvcConfigurationSupport
から Spring MVC 構成がインポートされます。例:@Configuration @EnableWebMvc @ComponentScan(basePackageClasses = MyConfiguration.class) public class MyConfiguration { }
インポートされた構成をカスタマイズするには、インターフェース WebMvcConfigurer
を実装し、個々のメソッドをオーバーライドします。例:
@Configuration @EnableWebMvc @ComponentScan(basePackageClasses = MyConfiguration.class) public class MyConfiguration implements WebMvcConfigurer { @Override public void addFormatters(FormatterRegistry formatterRegistry) { formatterRegistry.addConverter(new MyConverter()); } @Override public void configureMessageConverters(List<HttpMessageConverter<?>> converters) { converters.add(new MyHttpMessageConverter()); } }
注意 : Spring Web MVC 構成をインポートするための @EnableWebMvc
アノテーションを持つことができる @Configuration
クラスは 1 つだけです。ただし、提供された構成をカスタマイズするために、WebMvcConfigurer
を実装する複数の @Configuration
クラスが存在する場合があります。
WebMvcConfigurer
が、構成する必要があるより高度な設定を公開していない場合は、@EnableWebMvc
アノテーションを削除し、WebMvcConfigurationSupport
または DelegatingWebMvcConfiguration
から直接拡張することを検討してください。例:
@Configuration @ComponentScan(basePackageClasses = { MyConfiguration.class }) public class MyConfiguration extends WebMvcConfigurationSupport { @Override public void addFormatters(FormatterRegistry formatterRegistry) { formatterRegistry.addConverter(new MyConverter()); } @Bean public RequestMappingHandlerAdapter requestMappingHandlerAdapter() { // Create or delegate to "super" to create and // customize properties of RequestMappingHandlerAdapter } }
- 導入:
- 3.1
- 作成者:
- Dave Syer, Rossen Stoyanchev
- 関連事項: