27.2 Spring WebFlux框架
Spring WebFlux是Spring Framework 5.0中引入的新的响应式网络框架。不同与Spring MVC,它不需要Servlet API,是完全异步、非阻塞的,通过Reactor项目实现了Reactive Streams 规范。
Spring WebFlux有两种风格:函数式和基于注解。基于注解的风格相当接近于Spring MVC模型,如下所示:
“WebFlux.fn”——函数式变体,从请求的实际处理中分离了路由配置,如下所示:
WebFlux是Spring框架的一部分。详细信息请查看它的参考文档。
注 你可以定义多个RouterFunction
bean来模块化路由的定义。如果你需要应用优先级,可以给bean排序。
给你的应用添加spring-boot-starter-webflux
模块,开始使用。
注 在你的应用里同时添加spring-boot-starter-web
和spring-boot-starter-webflux
模块,会使Spring Boot自动配置Spring MVC,而不是WebFlux。这种行为是因为许多Spring开发者为了使用响应式的WebClient
,往他们的Spring MVC应用里添加spring-boot-starter-webflux
。你可以设置应用类型为SpringApplication.setWebApplicationType(WebApplicationType.REACTIVE)
,强制Spring Boot自动配置WebFlux。
最后更新于