百度百科:响应式编程是一种面向数据流和变化传播的编程范式。这意味着可以在编程语言中很方便地表达静态或动态的数据流,而相关的计算模型会自动将变化的值通过数据流进行传播
通俗理解:关于非阻塞应用程序,它们是异步的和事件驱动的,并且需要少量的线程来垂直缩放(即在JVM内)而不是水平的(即通过集群)
Spring WebFlux是Spring Framework 5.0中引入的新的反应式Web框架。与Spring MVC不同,它不需要Servlet API,完全异步和非阻塞,并通过Reactor项目实现Reactive Streams规范
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官方文档 flux官方文档