Spring mvc 路由器和带注释的控制器之间有什么区别?
我正在使用WebFlux进行Web开发。 我找到了两种表达请求映射的方法Spring mvc 路由器和带注释的控制器之间有什么区别?,spring-mvc,spring-boot,spring-webflux,Spring Mvc,Spring Boot,Spring Webflux,我正在使用WebFlux进行Web开发。 我找到了两种表达请求映射的方法 带注释的控制器:如@Controller或@RestController RouterFunction:RouterFunction用于将请求路由到HandlerFunction 我发现第二个比第一个更难使用,我也不知道它们之间的区别 所以我想问,2号还是1号哪个表现更好 谢谢我的朋友们 让我从你的最后一个问题开始 在性能方面,2比1好吗 不,性能没有差别 我发现2比1更难使用 这完全是基于个人偏好。也许你已经习惯了命令式
@Controller
或@RestController
RouterFunction
:RouterFunction
用于将请求路由到HandlerFunction
谢谢我的朋友们 让我从你的最后一个问题开始 在性能方面,2比1好吗 不,性能没有差别 我发现2比1更难使用 这完全是基于个人偏好。也许你已经习惯了命令式的编程风格。因此,您觉得编写起来很容易(相信我,过一段时间,您也会对路由器功能有同样的感觉) 基本上,路由器功能是向功能式编程迈出的一步。Spring希望用户能够灵活地以功能样式配置路由。
除此之外,控制器和路由器功能之间没有区别。如果我们保留个人偏好,则过滤器中有一个明显的区别 WebFlux框架提供两种类型的过滤器:WebFilters和HandlerFilterFunctions
它们之间的主要区别在于WebFilter实现适用于所有端点,HandlerFilterFunction实现仅适用于基于路由器的端点 RouterFunction的用途与注释类似。然而,有一个重要的区别:对于注释,您的路由仅限于通过注释值可以表达的内容。@RestControlle'=@Controller'+@ResponseBody'在methodsYes上默认为,对。我只是举一个例子。非常感谢你!“我理解其中的一部分。@xionge先生,您不理解哪一部分?首先,谢谢您的关心。关于Mono和Flux。使用Mono或Flux与不使用它有什么区别?我认为它们在性能上没有太大差异。因为我用JMeter做了一个测试。你最初的问题与“使用Mono或Flux有什么区别”无关。非常感谢。WebFlux中没有拦截器。当然,WebFilter也是如此……请给出一个或两个示例,其中功能配置可以比注释更进一步请看这篇文章