下面是一个使用RXJava观察三个不同的SQL查询并获取多个不同结果的示例代码:
import io.reactivex.Observable;
import io.reactivex.Observer;
import io.reactivex.disposables.Disposable;
public class Main {
public static void main(String[] args) {
// 创建三个模拟的SQL查询结果
Observable query1 = Observable.just("Result 1");
Observable query2 = Observable.just("Result 2");
Observable query3 = Observable.just("Result 3");
// 使用concat操作符将三个查询结果连接起来
Observable.concat(query1, query2, query3)
.subscribe(new Observer() {
@Override
public void onSubscribe(Disposable d) {
// 不需要实现
}
@Override
public void onNext(String result) {
// 处理每个查询结果
System.out.println("Result: " + result);
}
@Override
public void onError(Throwable e) {
// 处理错误
System.out.println("Error: " + e.getMessage());
}
@Override
public void onComplete() {
// 所有查询结果处理完成
System.out.println("All results processed");
}
});
}
}
在这个示例中,我们使用了Observable.just()
方法创建了三个模拟的SQL查询结果,然后使用concat
操作符将它们连接起来。最后,我们使用subscribe
方法来订阅这个Observable,并实现了Observer接口的四个方法来处理查询结果。
运行这个示例代码,你将会看到每个查询结果被打印出来,以及最后的"All results processed"消息。
请注意,这个示例中的SQL查询结果是使用Observable.just()
方法创建的,实际情况下你需要根据具体的数据库操作来创建Observable。