Android Jetpack 从使用到源码深耕【数据库注解Room 从实践到原理 】(一)

这篇具有很好参考价值的文章主要介绍了Android Jetpack 从使用到源码深耕【数据库注解Room 从实践到原理 】(一)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

android 开发中,常见的数据存储的方式,有SharePreference、网络、Sqlite、MMKV、文件、 ContentProvider,其中,SharePreference、MMKV从简单的使用入手,到使用上的经验总结,最终我们借助于源码的深入阅读学习,对其原理也进行了深入的总结。但是,大家也发现了,数据库Sqlite有很多成熟的三方封装框架,例如我们最常用的GreenDao,一直想着对其进行一下源码的深入探索、总结,但是由于各种原因,未付诸于实行。

今年计划对Jetpack系列组件,从使用入手、到经验总结、到源码原理解读进行一遍系统总结,其中正好有一个数据库的封装组件Room。本文,我们开始从简单的使用入手,开始源码原理的深入解读,希望大家有所收获。

其实说到Room,在前面Jetpack WorkManager组件的探索时,我们已经涉及到,当时研究WorkManager源码时,我们发现,它将我们提交的任务,使用Room存储到了数据库,这也正是为什么WorkManager可以做到,在APP被杀死、系统重启之后,我们提交的任务依然可以被执行的原因。

1.背景

全篇开始之前,先面对一个问题,为什么要使用Room?

需求:我们这里不妨以一个简单的例子,来说明一下。我们有一个实体User类,实体有三个字段,id、firstname、lastname,我们现在使用sqlite实现user数据的增、删、改、查。文章来源地址https://www.toymoban.com/news/detail-409113.html

到了这里,关于Android Jetpack 从使用到源码深耕【数据库注解Room 从实践到原理 】(一)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android Jetpack 从使用到源码深耕【ViewModel从实践到原理 】(三)

    上文,我们通过简单的ViewModel使用源码入手,对其源码进行阅读,原理进行了简单总结,简单来说,ViewModel是通过Activity的onRetainNonConfigurationInstance 与 getLastNonConfigurationInstance的自动调用,实现了 ViewModel数据的存储和恢复,数据存储在ViewModelStore的map中,更加明确的话,应该是

    2024年02月04日
    浏览(129)
  • Android Jetpack 从使用到源码深耕【LiveData 从实践到原理 】(三)

    之前几篇文章,我们通过一个简单的实例需求,将LiveData引入了进来,从而知道了使用它的好处。然后我们通过对其原理的猜想,实现方案的步步探索,自己通过编码实现了LiveData框架。 Android Jetpack 从使用到源码深耕【LiveData 从实践到原理 】(一) Android Jetpack 从使用到源码

    2024年02月04日
    浏览(41)
  • Android Jetpack 从使用到源码深耕【LiveData 从实践到原理 】(四)

    前面,经过LiveData的使用、自我编程实现LiveData框架、Jetpack LiveData源码探索几节的学习,相信大家都收益匪浅。 Android Jetpack 从使用到源码深耕【LiveData 从实践到原理 】(一) Android Jetpack 从使用到源码深耕【LiveData 从实践到原理 】(二) Android Jetpack 从使用到源码深耕【Li

    2024年02月04日
    浏览(42)
  • Android Jetpack 从使用到源码深耕【LiveData 从实践到原理 】(二)

    上文,我们就一个实例需求,引入了LiveData进行了实现,大家通过前后的编码实现方案对比,可以感受到LiveData的好用。不由的为jetpack组件的开发者点赞。 Android Jetpack 从使用到源码深耕【LiveData 从实践到原理 】(一) Android Jetpack 从使用到源码深耕【LiveData 从实践到原理 】

    2024年02月08日
    浏览(35)
  • Android Jetpack 从使用到源码深耕【调度任务组件WorkManager 从实践到原理 】(三)

    本文,是Jetpack 调度任务组件WorkManager 从实践到原理系列文章的最后一篇,本文我们将对WorkManager 任务的具体执行源码,进行深入的解读。 大家坐好,我们要开始飙车了。 书接上文,我们既然知道了WorkManager,既然把worker包装为了workrequset,然后提交到了线程池执行,那么我

    2023年04月08日
    浏览(34)
  • Android Jetpack 从使用到源码深耕【调度任务组件WorkManager 从实践到原理 】(一)

    本文,我们对Jetpack的调度任务组件WorkManager ,由使用入手,对其源码进行深入学习、总结一下。 研究这个框架之前,我们基于自己已有的知识体系,想一些问题,给自己设定一些目标,带着目标和问题,去阅读这块的源码,相信收获会更多更深一些。 1) WorkManager 是做什么

    2024年02月02日
    浏览(48)
  • Android Jetpack 从使用到源码深耕【调度任务组件WorkManager 从实践到原理 】(二)

    上文,我们进行了google 任务调度系列知识体系的回顾、探索,引出了WorkManager 。然后我们基于一个简单的需求背景,进行了WorkManager的引入使用,不过从使用上,我们看到和JobScheduler几乎一样的使用步骤,所以猜想内部实现原理,估计和JobScheduler差不多,本文,我们就WorkMa

    2023年04月09日
    浏览(43)
  • 【Jetpack】使用 Room 框架访问 Android 平台 SQLite 数据库 ( 导入依赖 | 定义 Entity 实体类 | 定义 Dao 数据库访问对象接口 | 定义数据库实例类 )

    对于 Room 框架 来说 , 使用 Java 语言 开发和使用 Kotlin 语言 开发 , 需要在 build.gradle 构建脚本 中进行不同的配置 , 主要有以下两个配置不同 : 应用的插件不同 ; 导入依赖库方式不同 ; 应用插件 应用的插件区别 : 如果使用 Java 语言开发 , 只需要导入 android 插件 ; 如果使用 Kotli

    2024年02月05日
    浏览(62)
  • Android--Jetpack--数据库Room详解二

    本是青灯不归客,却因浊酒恋红尘 关于Room数据库的基本使用,请参考文章Android--Jetpack--数据库Room详解一-CSDN博客 LiveData与ViewModle的使用,请参考文章Android--Jetpack--LiveData-CSDN博客 我们通过结合Room与LiveData和ViewModle的使用,可以使当我们的数据库发生变化的时候,自动的去更新

    2024年02月04日
    浏览(55)
  • Android中SQLite数据库增删改查/使用ListView显示数据库内容(有完整源码)

    android作业笔记 编写SQLite数据库相关操作的代码,实现下图中的功能(第一排按钮布局没有调整屏幕大小适配…不过下面那一排加了 android:layout_weight=“1”) SQLite展示 先上源码:https://gitee.com/meng-fanyang/SQLiteWork 里边有三个分支,对应这不同的写法: master主分支是写的可以说

    2024年02月09日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包