アノテーションインターフェース EnableWebFlux
@RetentionSE(RUNTIMESE)
@TargetSE(TYPESE)
@DocumentedSE
@Import(DelegatingWebFluxConfiguration.class)
public @interface EnableWebFlux
このアノテーションを
@Configuration
クラスに追加すると、WebFluxConfigurationSupport
から Spring WebFlux 構成がインポートされ、アノテーション付きコントローラーと関数エンドポイントの使用が可能になります。例:
@Configuration @EnableWebFlux @ComponentScan public class MyConfiguration { }
インポートされた構成をカスタマイズするには、WebFluxConfigurer
とそのメソッドの 1 つ以上を実装します。
@Configuration @EnableWebFlux @ComponentScan public class MyConfiguration implements WebFluxConfigurer { @Autowired private ObjectMapper objectMapper; @Override public void configureHttpMessageCodecs(ServerCodecConfigurer configurer) { configurer.defaultCodecs().jackson2JsonEncoder( new Jackson2JsonEncoder(objectMapper) ); configurer.defaultCodecs().jackson2JsonDecoder( new Jackson2JsonDecoder(objectMapper) ); } // ... }
Spring WebFlux 構成をインポートするには、@Configuration
クラスに @EnableWebFlux
アノテーションが必要です。ただし、提供された構成をカスタマイズする WebFluxConfigurer
を実装する複数の @Configuration
クラスが存在する場合があります。
WebFluxConfigurer
で設定が必要な設定が公開されていない場合は、@EnableWebFlux
アノテーションを削除し、WebFluxConfigurationSupport
または DelegatingWebFluxConfiguration
から直接拡張することで拡張モードに切り替えることを検討してください。後者では、1 つ以上の WebFluxConfigurer
構成クラスを検出および委譲できます。
- 導入:
- 5.0
- 作成者:
- Brian Clozel, Rossen Stoyanchev
- 関連事項: