Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >RxJava :从数据库中检索数据并返回一个列表

RxJava :从数据库中检索数据并返回一个列表
EN

Stack Overflow用户
提问于 2019-06-27 03:38:48
回答 2查看 568关注 0票数 1

我在我的Android项目中使用RxJava,我希望异步地从使用RxJava的表中检索所有实体用户,并将列表返回给适配器myAdapter(Context context, List<User> users)

但是现在我只能拥有Single<User>,如何才能直接获得列表并将其放入适配器中呢?

我的代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
// here vm.getUserList() should return a List<User>
MyAdapter adapter = new MyAdapter(context, vm.getUserList());
...

在我的vm中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public Single<List<User>> getUserList() {
    return Single.fromCallable(() -> myDatabaseRepository.getUsers());
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-06-27 04:59:58

您只需要调用users方法并在相应的方法中处理成功/错误。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
getUserList()
   .subscribeOn(Schedulers.io())
   .observeOn(AndroidSchedulers.mainThread())
   .doOnSuccess(new Consumer<List<User>>() {
      @Override
      public void accept(List<User> users) throws Exception {
         // fill adapter
         MyAdapter adapter = new MyAdapter(context, users);
      }
   })
   .doOnError(new Consumer<Throwable>() {
      @Override
      public void accept(Throwable throwable) throws Exception {
         // handle error
      }
   });

是的,这是从数据库/网络检索数据的正常方式。您可以从存储库中公开可观察性/单变量,然后订阅它们并接收成功/错误方法中的数据,以便在UI中显示给用户。

票数 1
EN

Stack Overflow用户

发布于 2019-06-27 03:50:17

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
private void fetchUser() {
            ('function returning Single<List<User>>').subscribeOn(Schedulers.io())
            .observeOn(AndroidSchedulers.mainThread())
            .subscribe(this::onSuccess, this::onFail);
}

private void onSuccess(List<User> users) {
    //handle user model here
}

private void onFail(Throwable t) {
    //handle error here
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56790188

复制
相关文章
Excel公式技巧20: 从列表中返回满足多个条件的数据
在实际工作中,我们经常需要从某列返回数据,该数据对应于另一列满足一个或多个条件的数据中的最大值。
fanjy
2020/03/25
9.3K0
Excel公式技巧20: 从列表中返回满足多个条件的数据
mysql数据库(7):表中检索信息
方法一:先删除用 DELETE FROM pet;  去修改txt中内容,再LOAD DATA LOCAL INFILE 'D:/test/pet.txt' INTO TABLE pet;
川川菜鸟
2021/10/18
4.4K0
Ext 根据数据库返回json动态生成grid列表
完整代码下载地址http://download.csdn.net/detail/woshishui6501/5306500
西门呀在吹雪
2020/11/09
7270
Cacti 中查询MySQL数据库占用磁盘大小并返回的php修改了
cacti 中查询MySQL数据库占用磁盘大小并返回的php修改了,但在cacti中配置了模板,可以在device中创建表格并且可以生成data source的条目,但始终没有返回数据 不知道是什么问题,暂时没有办法解决。 尝试过用script query 和script_server的方式,由于还是不了解也不知道是对cacti的了解不够还是什么原因 始终没有返回值
星哥玩云
2022/06/29
1.7K0
C#读取Excel表格中数据并返回datatable
在软件开发的过程中,经常用到从excel表格中读取数据作为数据源,以下整理了一个有效的读取excel表格的方法。 DataTable GetDataTable(string tableName,string leftTopCel,string rightbutCel) { bool hasTitle = false; OpenFileDialog openFile = new OpenFileDialog(); ope
码农阿宇
2018/04/18
2.4K0
Android RxJava应用:从磁盘/内存缓存中获取缓存数据
Rxjava,由于其基于事件流的链式调用、逻辑简洁 & 使用简单的特点,深受各大 Android开发者的欢迎。
Carson.Ho
2022/03/25
2.3K0
Android RxJava应用:从磁盘/内存缓存中获取缓存数据
MySql数据库列表数据分页查询、全文检索API零代码实现
前面文档主要介绍了元数据配置,包括表单定义和表关系管理,以及表单数据的录入,本文主要介绍数据查询和分页在crudapi中的实现。
crudapi
2021/08/22
1.6K0
MySql数据库列表数据分页查询、全文检索API零代码实现
数据库的检索语句
仅仅要运行“SELECT * FROM 名”就可以。SELECT * FROM T_Employee 。
全栈程序员站长
2022/07/06
2.5K0
数据库的检索语句
Android RxJava 实战系列:从磁盘 / 内存缓存中 获取缓存数据
Carson_Ho的Github地址 = RxJava2实战系列:从磁盘 / 内存缓存中 获取缓存数据
Carson.Ho
2019/02/22
2K0
PHP从数据库提取并显示数据的典型代码
PHP从数据库提取并显示数据的典型代码如下: if ($res=mysql_query($sql)) { //数据库查询执行成功 while($row=mysql_fetch_array($res)){ //循环查询满足条件的所有记录 echo '姓名:'.$row['name'] . '成绩:'. $row['score']. ''; } //删除查询 mysql_free_result(
似水的流年
2019/12/06
1.9K0
PHP 如何从关联数组中移除并返回指定的键值对
该功能已经整合到 WPJAM Basic 插件中,并已免费提供下载,简单勾选或者设置下即可开启!
Denis
2023/04/14
5.1K0
PHP从数据库提取并显示数据的典型代码
PHP从数据库提取并显示数据的典型代码如下: if ($res=mysql_query($sql)) { //数据库查询执行成功 while($row=mysql_fetch_array($res)){ //循环查询满足条件的所有记录 echo '姓名:'.$row['name'] . '成绩:'. $row['score']. ''; } //删除查询 mysql_free_resu
似水的流年
2018/01/18
3.6K1
【说站】splitlines在python中返回列表
2、返回一个是否包含换行符的列表,如果参数keepends为False,则不包含换行符。
很酷的站长
2022/11/23
2.4K0
从 Python 列表(list)中随机选择一个元素
import random foo = ['a', 'b', 'c', 'd', 'e'] print(random.choice(foo)) 或 foo = ['a', 'b', 'c', 'd', 'e'] from random import randrange random_index = randrange(0,len(foo)) print foo[random_index]
Python疯子
2018/09/06
7K0
信息检索:布尔检索-求交集并集(1)
返回结果应该是[2,3]。即,通过运算,得知doc2,doc3满足条件。 要实现布尔检索,关键在于建立倒排索引和求N个集合的交集,并集。在这里,首先实现两个集合的交并集简易算法。
超级大猪
2019/11/21
1.6K0
数据库常见查询语句_数据库检索语句
select 字段1, 字段2,…from 表名 where 字段 关系符号 值 ;
全栈程序员站长
2022/10/05
1.9K0
django中新插入对象数据到数据库并返回自增主键的ID
问题:在Django中新插入一条数据之后,后面还需返回其自增的主键(ID)的值,从而完成后面的操作 修改前: sign_id = models.IntegerField(primary_key=True) 解决: 将IntegerField 换成 AutoField 修改后: sign_id = models.AutoField(primary_key=True) 用法: 例如对象名为Book book = Book(name='C语言', price=25.5) book.save() print('
卡伊德
2022/09/13
1.3K0
java8 利用reduce实现将列表中的多个元素的属性求和并返回
利用java8流的特性,我们可以实现list中多个元素的 属性求和 并返回。 案例: 有一个借款待还信息列表,其中每一个借款合同包括:本金、手续费; 现在欲将 所有的本金求和、所有的手续费求和。 我们可以使用java8中的函数式编程,获取list的流,再利用reduce遍历递减方式将同属性(本金、手续费)求和赋予给一个新的list中同类型的对象实例,即得到我们需要的结果:
青山师
2023/05/05
1.4K0
Scrapy-从数据库取出IP并判断是否
2020考研打卡第二十天,星辰之变,骄阳岂是终点。 人生不如意十之八九,我怎么能放弃呢,老子一定要做大做强!!!
py3study
2020/01/17
7960
HttpClient 发送get请求并返回Json数据
一、以百度百科接口为例 http://baike.baidu.com/api/openapi/BaikeLemmaCardApi?scope=103&format=json&appid=379020&
week
2018/08/24
3.2K0
HttpClient 发送get请求并返回Json数据

相似问题

Rest模式从数据库中检索值并返回

10

RxJava:在列表中创建项目并返回新列表

13

从数据库中检索列表

11

从数据库中检索数据并递增1

10

使用Post请求检索数据并返回列表

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文