SpringFlux入门(上篇)

举报
tanoak 发表于 2018/12/20 10:50:29 2018/12/20
【摘要】 # SpringBoot WebFlux1. 什么是响应式编程 ``` 百度百科:响应式编程是一种面向数据流和变化传播的编程范式。这意味着可以在编程语言中很方便地表达静态或动态的数据流,而相关的计算模型会自动将变化的值通过数据流进行传播 通俗理解:关于非阻塞应用程序,它们是异步的和事件驱动的,并且需要少量的线程来垂直缩放(即在JVM内)而不是水平的(即通过集群) ```2. 什么是f...

# SpringBoot WebFlux



1. 什么是响应式编程

  ```

  百度百科:响应式编程是一种面向数据流和变化传播的编程范式。这意味着可以在编程语言中很方便地表达静态或动态的数据流,而相关的计算模型会自动将变化的值通过数据流进行传播

  通俗理解:关于非阻塞应用程序,它们是异步的和事件驱动的,并且需要少量的线程来垂直缩放(即在JVM内)而不是水平的(即通过集群)

  ```

2. 什么是flux

```

Spring WebFlux是Spring Framework 5.0中引入的新的反应式Web框架。与Spring MVC不同,它不需要Servlet API,完全异步和非阻塞,并通过Reactor项目实现Reactive Streams规范


```

![](https://upload-images.jianshu.io/upload_images/9819800-59d34cebd81ca41b.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)


3. 开始flux

flux为开发人员提供了两种开发模型,本篇首先开始传统写法

![](https://upload-images.jianshu.io/upload_images/9819800-1ee4bd5908fa6481.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)


a. 导入jar包

```

 <dependency>

        <groupId>org.springframework.boot</groupId>

        <artifactId>spring-boot-starter-webflux</artifactId>

 </dependency>

```


b. 注解编程模型

```

@RestController

public class TestController {

@GetMapping("/hello")

public Mono<String> hello() {   // 返回类型为Mono<String>

return Mono.just("Hello world");// 使用Mono.just生成响应式数据

}

}

```

参考文章

[springBoot官方文档](https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#boot-features-webflux)

[flux官方文档](https://docs.spring.io/spring/docs/current/spring-framework-reference/web-reactive.html#webflux-web-handler-api)



【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。