本文主要是介绍Reactor 3 (5): 错误处理 onError相关方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
数据在map等方法处理的过程中有可能会出现一些异常情况,如果出现异常需要进行处理reactor提供了几种处理error的方法:
- onErrorReturn:出现错误直接返回默认值
- onErrorResume:出现错误使用备用方案
- onErrorContinue:出现错误跳过错误,使用原数据继续执行
- onErrorMap:替换错误内容
onErrorReturn使用
@Testpublic void onErrorReturn () {Flux.interval(Duration.ofMillis(100)).map(i -> {if (i == 2) throw new RuntimeException("fake a mistake");return String.valueOf(100/(i-5));}).doOnError(e -> log.error("error 类型:{}, error 消息: {}", e.getClass(),e.getMessage()))// 遇到error直接返回指定value, 错误类型判断可选.onErrorReturn("test on error return").subscribe(log::info)
这篇关于Reactor 3 (5): 错误处理 onError相关方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!