在GreenDao 3.X之基本使用已经了解到GreenDao 3.X的基本使用。现GreenDao 3.X已集成RxJava,其中,RxDao<T,K> 和RxQuery<T>便是GreenDao 3.X中RxJava的核心操作类。其最大的特点就是在增删改查等基本操作时返回Observable,用于RxJava的流式逻辑写法,其最大的优点便于流式开发,提高代码的可读性。。既然集成了RxJava,当然要尝尝鲜,看看该如何使用。
RxDao
获取RxDao对象和RxQuery对象
RxDao<T,K> mRxDao = xxDao.rx(); // 返回一个默认subscribeOn在IO线程的RxDao
// T是实体类,K主键类型
RxDao<T,K> mRxDao = xxDao.rxPlain();// 返回一个未设置默认订阅的RxDao
常用 API
rx.Observable<java.lang.Long> count():返回一个含有数据库数据个数的Observable
rx.Observable<java.lang.Void> delete(T entity):从数据库中删除数据,并返回一个空的Observable
rx.Observable<java.lang.Void> deleteAll():从数据库中删除数据,并返回一个空的Observable
rx.Observable<java.lang.Void> deleteByKey(K key):将数据库中主键为key的数据删除,,并返回一个空的Observable
rx.Observable<java.lang.Void> deleteByKeyInTx(java.lang.Iterable<K> keys):使用事务操作,将数据库中,删除key集合中每个key所对应的实体,并返回一个空的Observable
rx.Observable<java.lang.Void> deleteByKeyInTx(K... keys):使用事务操作,将数据库中,删除key[ ]中每个key所对应的实体,并返回一个空的Observable
rx.Observable<java.lang.Void> deleteI