@Retention(value=RUNTIME) @Target(value=TYPE) @Documented @Import(value=DelegatingWebFluxConfiguration.class) public @interface EnableWebFlux
@Configuration
クラスに追加すると、WebFluxConfigurationSupport
から Spring WebFlux 構成がインポートされ、アノテーション付きコントローラーと関数エンドポイントの使用が可能になります。例:
@Configuration @EnableWebFlux @ComponentScan(basePackageClasses = MyConfiguration.class) public class MyConfiguration { }
インポートされた構成をカスタマイズするには、WebFluxConfigurer
とそのメソッドの 1 つ以上を実装します。
@Configuration @EnableWebFlux @ComponentScan(basePackageClasses = MyConfiguration.class) public class MyConfiguration implements WebFluxConfigurer { @Override public void configureMessageWriters(List<HttpMessageWriter<?>> messageWriters) { messageWriters.add(new MyHttpMessageWriter()); } // ... }
Spring WebFlux 構成をインポートするには、@Configuration
クラスに @EnableWebFlux
アノテーションが必要です。ただし、提供された構成をカスタマイズする WebFluxConfigurer
を実装する複数の @Configuration
クラスが存在する場合があります。
WebFluxConfigurer
で設定が必要な設定が公開されていない場合は、@EnableWebFlux
アノテーションを削除し、WebFluxConfigurationSupport
または DelegatingWebFluxConfiguration
から直接拡張することで拡張モードに切り替えることを検討してください。後者では、1 つ以上の WebFluxConfigurer
構成クラスを検出および委譲できます。
WebFluxConfigurer
, WebFluxConfigurationSupport
, DelegatingWebFluxConfiguration