webflux的使用

pom文件,一山不容二虎,下面两个依赖不能同时使用,因为这次我们要用到webflux,所以注释掉上面的web,否则,编译没错误,但网页显示不出来。


<!--        <dependency>-->
<!--            <groupId>org.springframework.boot</groupId>-->
<!--            <artifactId>spring-boot-starter-web</artifactId>-->
<!--        </dependency>-->

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-webflux</artifactId>
        </dependency>

HelloHandle类

package com.example.demo;

import org.springframework.http.MediaType;
import org.springframework.stereotype.Component;
import org.springframework.web.reactive.function.BodyInserters;
import org.springframework.web.reactive.function.server.ServerRequest;
import org.springframework.web.reactive.function.server.ServerResponse;
import reactor.core.publisher.Mono;

@Component
public class HelloHandle {
    public Mono<ServerResponse> hello(ServerRequest request) {
        //返回一个字符串 hello this is a spring boot webflux project!
        return ServerResponse.ok().contentType(MediaType.APPLICATION_JSON)
                .body(BodyInserters.fromObject("hello this is a spring boot webflux project!"));
    }
}

HelloRouter类

package com.example.demo;

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启动容器+@Bean注册Bean
@Configuration
public class HelloRouter {
    @Bean
    public RouterFunction<ServerResponse> routeHello(HelloHandle helloHandle) {
        //接收HelloHandle传来的字符串(显示在网页),更改路由
        return RouterFunctions
                .route(RequestPredicates.GET("/hello")
                .and(RequestPredicates.accept(MediaType.APPLICATION_JSON)),helloHandle::hello);
    }
}

总结:要把上面的web注释掉,不然会显示不出来

转至:https://blog.csdn.net/qq_43141611/article/details/102629456

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值