android - 改造、RxJava 和 Sqlite
问题描述
我已经使用 Retrofit 从服务器检索数据,现在我正在尝试使用 sqlite 数据库进行存储
WebserviceHandler.getImagePathSelectAl()
.subscribeOn(Schedulers.io())
.flatMap(s -> WebserviceHandler.getCtbLeidSource())
.subscribeOn(Schedulers.io())
.subscribe(.................);
和响应模型类
public class ImagePathResponse {
@SerializedName("Message")
@Expose
private String message;
@SerializedName("HasColumns")
@Expose
private Integer hasColumns;
@SerializedName("ErrorMessage")
@Expose
private String errorMessage;
@SerializedName("ImagePath_insert")
@Expose
private List<ImagePath> imagePathInsert = null;
@SerializedName("ImagePath_update")
@Expose
private List<ImagePath> imagePathUpdate = null;
和
public class LeedSourceResponse {
@SerializedName("Message")
@Expose
private String message;
@SerializedName("HasColumns")
@Expose
private Integer hasColumns;
@SerializedName("ErrorMessage")
@Expose
private String errorMessage;
@SerializedName("LeedSource_insert")
@Expose
private List<LeedSource> leedSourceInsert = null;
@SerializedName("LeedSource_update")
@Expose
private List<LeedSource> leedSourceUpdate = null;
现在我想在每个响应中插入和更新 sqlite db,如何实现这一点。我是 RxJava 和 RxAndroid 的新手
解决方案
您可以检查 Rooms 持久性库,它是 android Rooms的 sql 库,但在这种情况下,我建议您使用RealmDb而不是 sql,如果您想为每个响应保存日期,它会更快并且可以完美运行。
推荐阅读
- python - 基于 Python 的 PDF 解析器与 Zapier 集成
- r - 将 pmap 结果作为数据框中的列返回
- react-native - 如何将媒体从一个应用程序共享到另一个应用程序?
- python - 如何制作一列列的元素并从熊猫中的另一列获取值?
- r - 使用 dplyr mutate_at 根据其向量估计每个值的分位数
- c++ - 为什么使用 %z 格式的 std::put_time(std::gmtime 会为 UTC 返回 +0100?
- c# - 扫描的页数
- r - 如何根据另一列中的部分字符串将一列添加到 R 中的数据框中?
- slurm - Slurm:sbatch:致命:无法处理配置文件
- python-3.x - 反转给定的字符串