1、基于传统的结构 Demo (仅仅作为快速了解,生产环境不会用这种)
请求处理类 Controller 类
package com.yootk.webflux.handler;
import org.springframework.web.reactive.function.server.ServerRequest;
import org.springframework.web.reactive.function.server.ServerResponse;
import reactor.core.publisher.Mono;
// 最基础的Reactor 实现
@Component //进行组件注册(让spring 识别并管理这个类 )
public class MessageHandler{
//这是一个WebFlux处理模块(接收请求,并处理请求)
// 在 WebFlux 编程里面如果要进行响应的话会区分单个响应(单一对象)以及多个响应(集合)
// Mono 只能接收单个对象
// 接收请求,并响应这个请求
public Mono<ServerResponse>echoHandler(ServerRequest request){
return ServerResponse.ok().header("Context-Type","text/html;charset=UTF-8"). //响应头信息
body(BodyInserters.fromValue("沐言科技:www.yootk.com"));
}
}
路由类 Router 类
package com.yootk.webflux.router;
import com.yootk.webflux.handler.MessageHandler; // 导入Controller 类
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.http.MediaType;
import org.springframework.web.reactive.function.server.*;
@Configuration
public class MessageRouter {
//消息路由处理
@Bean // 进行路由的功能注册
pub