rx-java - 如何将 RX.Observable 转换为 IO.reactivex.Observable
问题描述
我正在使用 rxjava jdbc 库但使用 rx1 支持的库查询数据库。
rx.Observable<T> rx1 =Database.from(url, user,password).autoMap(resultType);
我正在尝试将其转换为
io.reactivex.Observable.fromIterable(BlockingObservable.from(rx1).toIterable());
但它不起作用我可以得到 RX Java 2 的等效代码吗?我的意思是我想返回io.reactivex.Observable<T>
而不是返回rx.Observable<T>
。
谢谢您的帮助。
解决方案
您可以使用该RxJavaInterop
库在 RxJava1 和 RxJava2 类型之间进行转换。它提供了在两个版本支持的所有不同反应类型之间进行转换的功能。在您的情况下,您可以像这样将 RxJava1 转换Observable
为 RxJava2 Observable
:
io.reactivex.Observable<T> rx2 = RxJavaInterop.toV2Observable(rx1);
该库由 RxJava 项目本身的主要开发人员维护,因此您可以确信它是可靠的。请务必使用 v0.x 分支中的库版本 - 更新的版本 (3.x) 用于在 RxJava1 和 RxJava3 之间进行转换。
推荐阅读
- spring-boot - 将几乎所有请求重定向到 index.html
- c - 我将 4 用于 lopp,2 工作正常,其余 2 显示问题 3,4 循环显示无效答案
- javascript - 根据变量状态更改班级
- apache-spark - 处理非常大的数据集的 Spark SQL 在 30 分钟后因找不到文件异常而失败
- linear-programming - 线性规划 PULP 中的非此即彼的约束
- excel - 用标准复制,用大数据冻结
- python - 如何单击迭代 Selenium 中的 Web 元素列表?
- python - OpenCV:imdecode 内存中的图像返回无
- android - 如何在带有 RTL 字符的 RTL TextView 中将电话号码设置为 LTR
- javascript - 使用 React Native 打开键盘时更新滚动视图