前言:
在我们日常开发中,经常要和数据打交道,所以存储数据是很重要的事。Android从最开始使用SQLite作为数据库存储数据,再到许多的开源的数据库,例如QRMLite,DBFlow,郭霖大佬开发的Litepal等等,都是为了方便SQLite的使用而出现的,因为SQLite的使用繁琐且容易出错。Google当然也意识到了SQLite的一些问题,于是在Jetpack组件中推出了Room,本质上Room也是在SQLite上提供了一层封装。因为它官方组件的身份,和良好的开发体验,现在逐渐成为了最主流的数据库ORM框架。
Room官方文档:https://developer.android.goo...
SQL语法教程:https://www.runoob.com/sqlite...
本文代码地址:https://github.com/taxze6/Jet...
为什么要使用Room?Room具有什么优势?
Room在SQLite上提供了一个抽象层,以便在充分利用SQLite的强大功能的同时,能够享有更强健的数据库访问机制。
Room的具体优势:
- 有可以最大限度减少重复和容易出错的样板代码的注解
- 简化了数据库迁移路径
- 针对编译期
SQL
的语法检查 - API设计友好,更容易上手,理解
- 与
SQL
语句的使用更加贴近,能够降低学习成本 - 对
RxJava
、LiveData
、Kotlin
协程等都支持