浅谈 Spring boot2.0 中 响应式 Spring WebFlux 和 WebClient

 Spring WebFlux是随Spring 5推出的响应式Web框架。Spring webFlux在Spring Boot框架中的位置和功能,如下图。

响应式Spring的道法术器(Spring WebFlux 快速上手 + 全面介绍)

从这个图就可以看出对支持Spring 5的Spring Boot 2.0来说,新加入的响应式技术栈是其主打核心特性。

具体来说,Spring Boot 2支持的响应式技术栈包括如下:

  • Spring Framework 5提供的非阻塞web框架Spring Webflux;
  • 遵循响应式流规范的兄弟项目Reactor;
  • 支持异步I/O的Netty、Undertow等框架,以及基于Servlet 3.1+的容器(如Tomcat 8.0.23+和Jetty 9.0.4+);
  • 支持响应式的数据访问Spring Data Reactive Repositories;
  • 支持响应式的安全访问控制Spring Security Reactive;
  • 等。

spring-boot-starter-webflux 依赖,是我们核心需要学习 webflux 的包,

里面默认包含了 spring-boot-starter-reactor-netty 、spring 5 webflux 包。也就是说默认是通过 netty 启动的。

如果不想用netty作为启动,想用servlet3.1 作为容器,则可以用下面的pom例子

<dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-reactor-netty</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webflux</artifactId>
            <version>5.1.3.RELEASE</version>
            <exclusions>
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-reactor-netty</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-reactor-netty</artifactId>
        </dependency>

官方给的一个如何build rest服务的例子为:

http://spring.io/guides/gs/reactive-rest-service/

更多介绍webclient, webflux概念和编程的内容,见如下的连接,就不搬砖了。

【推荐】https://blog.csdn.net/jeffli1993/article/details/79941175

       http://blog.51cto.com/liukang/2090163

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值