github: https://github.com/zhanzhanqi/web-flux
本文将web-flux demo中的handler模式的使用方式进行了节选,直接将本文中代码服务复制到ide中就可以执行。至于深层次的reactive的套路及其好处,有了更深的体会后在开文章记录。
pom依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-webflux</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb-reactive</artifactId>
</dependency>
目前spring支持reactive的repository只有mongo, redis, Cassandra 暂时不支持基于jdbc的MySQL,因此选用了mongo作为repository。在本地使用docker的方式安装mongo可以参考Docker安装Mongo
Model
@Document
class User {
@Id
var id: Long? = null
var firstName: String = ""
var lastName: S