zoukankan      html  css  js  c++  java
  • Reactor系列(四)subscribe订阅

    #java# #reactor# #subcribe# #订阅#

    视频讲解 :https://www.bilibili.com/video/av79117693/

    FluxMonoTestCase.java
    package com.example.reactor;
    
    import lombok.extern.slf4j.Slf4j;
    import org.junit.jupiter.api.Test;
    import org.reactivestreams.Subscriber;
    import org.reactivestreams.Subscription;
    import reactor.core.publisher.Flux;
    
    @Slf4j
    public class FluxMonoTestCase extends BaseTestCase {
        @Test
        public void subscribe(){
            Flux<String> stringFlux = Flux.just("Hello","World");
            //stringFlux.subscribe(System.out::println);
            //订阅方式一
            stringFlux.subscribe(val ->{
                log.info("val:{}",val);
            },error ->{
                log.error("error:{}",error);
            },() ->{
                log.info("Finished");
            },subscription -> {
                subscription.request(1);
            });
            //订阅方式二
            stringFlux.subscribe(new Subscriber<String>() {
                @Override
                public void onSubscribe(Subscription subscription) {
                    subscription.request(Long.MAX_VALUE);
                }
                @Override
                public void onNext(String s) {
                    log.info("onNext:{}",s);
                }
                @Override
                public void onError(Throwable throwable) {
                }
                @Override
                public void onComplete() {
                    log.info("onComplete");
                }
            });
        }
    }
    BaseTestCase.java
    package com.example.reactor;
    
    import java.util.Arrays;
    import java.util.List;
    
    public class BaseTestCase {
        protected static final List<Employee> list = Arrays.asList(
                new Employee(1, "Alex", 1000),
                new Employee(2, "Michael", 2000),
                new Employee(3, "Jack", 1500),
                new Employee(4, "Owen", 1500),
                new Employee(5, "Denny", 2000));
    }

    关注公众号,坚持每天3分钟视频学习

  • 相关阅读:
    两个链表的第一个公共节点
    笔试题总结
    SMTP协议分析
    用两个栈实现一个队列
    医院Android项目总结
    C标准I/O库函数与Unbuffered I/O函数
    ELF文件
    x86汇编程序基础(AT&T语法)
    【转】Linux C动态内存泄漏追踪方法
    Minor【 PHP框架】6.代理
  • 原文地址:https://www.cnblogs.com/JavaWeiBianCheng/p/12037519.html
Copyright © 2011-2022 走看看