SQLite Litepal GreenDao 介绍
- SQLite
- Litepal
- GreenDao
SQLite是android和ios自带的数据库系统 ,SQLite作为一个嵌入式数据库引擎是很适合移动端使用。作为android自带的数据库我们了解它是必须的,接下来的Litepal和GreenDao都是使用SQLite的封装,(不知道这样说是不是合适)方便了像我一样SQL语言能力不强的人更方便的使用数据库,基本上都是使用了ORM我们针对数据库的CURD操作可以用java语句来实现,litepal是学习android第一个接触的开源库,greenDao的体积很小,速度很快是很多人推荐使用的
1.SQLite
SQLite是一个进程库,实现了一个 自包含的, 无服务器, 零配置, 事务性 的SQL数据库引擎。SQLite是一个嵌入式SQL数据库引擎。与大多数其他SQL数据库不同,SQLite没有单独的服务器进程。SQLite直接读取和写入普通磁盘文件。具有多个表,索引,触发器和视图的完整SQL数据库包含在单个磁盘文件中。数据库文件格式是跨平台的 - 您可以在32位和64位系统之间或大端和 小端架构之间自由复制数据库 https://www.sqlite.org/
零配置 , SQLite在使用之前不需要“安装”。没有“设置”配置文件过程。
无服务器 ,大多数SQL数据库引擎都实现为单独的服务器进程。希望访问数据库的程序使用某种进程间通信(通常为TCP / IP)与服务器通信,以将请求发送到服务器并接收返回结果。SQLite不这样工作。使用SQLite,要访问数据库的进程直接从磁盘上的数据库文件读取和写入。没有中介服务器进程。SQLite是唯一一个可以让多个应用程序同时访问同一个数据库的人员。
单个数据库文件 , SQLite数据库是可以位于目录层次结构中任何位置的单个普通磁盘文件。可以方便所用用户程序去读取和改变,这带来的问题是数据安全没有保障
2.Litepal
开源地址:https://github.com/LitePalFramework/LitePal#latest-downloads/
LitePal是一个开源的Android库,允许开发人员使用SQLite数据库非常简单。您可以完成大部分数据库操作,而不需要编写SQL语句,包括创建或升级表,粗暴操作,聚合函数等。
使用对象关系映射(ORM)模式
几乎零配置(只有一个配置文件,几个属性)
自动维护所有表(例如,创建,更改或删除表)
封装的API,用于避免编写SQL语句
1.6支持数据库加密
3.GreenDao
开源地址:https://github.com/greenrobot/greenDAO
greenDAO是一个开源的Android ORM,使SQLite数据库的开发再次有趣。它减轻开发人员处理低级数据库需求,同时节省开发时间。SQLite是一个令人敬畏的嵌入式关系数据库。不过,编写SQL和解析查询结果是相当乏味和耗时的任务。通过将Java对象映射到数据库表(称为ORM,“对象/关系映射”),greenDAO可以将它们从这些映射中释放出来。这样,您可以使用简单的面向对象的API来存储,更新,删除和查询Java对象。
最高性能(可能是Android最快的ORM); 我们的基准也是开源的
最小的内存消耗
小图书馆大小(<100KB),以保持您的建立时间较低,并避免65k方法限制
数据库加密:greenDAO支持SQLCipher,以保护用户的数据安全