如何将 RX.Observable 转换为 IO.reactivex.Observable

How to Convert RX.Observable to 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 的等效代码吗?我的意思是我想 return 返回 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 之间进行转换。