android项目实战 Android JetPack架构篇,一个实战项目带你学懂JetPack( 六 )


在这个演示中,数据来自一个存储库。视图模型不需要知道存储库与什么交互。它只需要知道如何通过它公开的方法与存储库交互。
存储库管理一个或多个数据源。在WordListSample应用程序中,后端是一个房间数据库。Room是实现SQLite数据库的包装器。这个房间为你做了很多工作,这些工作你以前必须自己做。例如,Room完成了以前用SQLiteOpenHelper类完成的所有工作。
DAO映射方法调用数据库查询,这样当存储库调用getAllWords()之类的方法时,Room就可以按单词ASC的顺序从word _ table中执行select *。
因为实时数据是作为查询返回的结果进行观察的,所以每当房间中的数据发生变化时,都会执行观察者界面的onChanged()方法,并更新用户界面。
单击以下链接下载该代码实验室的解决方案代码:
https://download.csdn.net/download/itismelzp/10753867

推荐阅读