Android 数据库框架总结,总有一个适合你!

转:Android 数据库框架总结,总有一个适合你!
推荐使用GreenDaoRealm


一:OrmLite

简述: 优点: 1.轻量级;2.使用简单,易上手;3.封装完善;4.文档全面。缺点:1.基于反射,效率较低(本人还没有觉得效率低);2.缺少中文翻译文档

jar包 地址:http://ormlite.com/releases/

集成方法:把jar包复制到as的libs文件夹下,并且引用jar包即可

用于学习的相关博客:

我的博客
总结:比较好的一个数据库开源框架。不过git上很久没有更新了,貌似人家好像不在git上做项目维护了,而是在 官网 上做维护更新。

二:LitePal

简述:暂无

git 地址:https://github.com/LitePalFramework/LitePal

集成方法:compile ‘org.litepal.android:core:1.5.0’

用于学习的相关博客:

我的博客
郭霖的博客
总结:LitePal 框架是郭大神开源的数据库框架,他的博客也比较详细的介绍了其用法。还不错的框架。

三:GreenDao

简述:其优点还包括以下几点:1.存取速度快; 2.支持数据库加密; 3.轻量级; 4.激活实体; 5.支持缓存; 6.代码自动生成

git 地址:https://github.com/greenrobot/greenDAO

集成方法: compile ‘org.greenrobot:greendao:3.2.0’

用于学习的相关博客:

GreenDao3.2.0项目的接入和简单的使用
GreenDao3.2的使用,爱不释手
Android ORM 框架:GreenDao 使用详解(进阶篇)
GreenDao数据加密相关博客:

greenDAO的使用详解—(4)greenDAO3.2.2结合sqlcipher加密数据库
greendao3.0以上使用步骤(三):数据库加密
加密注意事项:
多添加一个依赖的

compile 'net.zetetic:android-database-sqlcipher:3.5.7@aar'
1
网址:https://www.zetetic.net/sqlcipher/sqlcipher-for-android/

关于GreenDao3.2的升级处理一个不错的git地址:GreenDaoUpgradeHelper

总结:效率很高,插入和更新的速度是sqlite的2倍,加载实体的速度是ormlite的4.5倍,目前git上一直在做更新维护,start数量为9000多。

四:DBFlow

简述:其优点还包括以下几点:1.存取速度快; 2.支持数据库加密; 3.轻量级; 4.激活实体; 5.支持缓存; 6.代码自动生成

git 地址:https://github.com/Raizlabs/DBFlow

集成方法: 参考git地址中的内容

用于学习的相关博客:

DBFlow的初步使用
我所了解的Android数据库框架——DBFlow
总结:也是很不错的数据库框架,kotlin,rx好像都支持,比GreenDao3.2的使用好像跟方便一些(还没有具体使用)。目前git上一直在做更新维护,截止2018.1.19日前start数量为3944多。

五:Realm

简述:
1.易用:Ream 不是在SQLite基础上的ORM,它有自己的数据查询引擎。并且十分容易使用。
2.快速:由于它是完全重新开始开发的数据库实现,所以它比任何的ORM速度都快很多,甚至比SLite速度都要快。
3.跨平台:Realm 支持 iOS & OS X (Objective‑C & Swift) & Android。我们可以在这些平台上共享Realm数据库文件,并且上层逻辑可以不用任何改动的情况下实现移植。
4.高级:Ream支持加密,格式化查询,易于移植,支持JSON,流式api,数据变更通知等高级特性
5.可视化

git 地址:https://github.com/realm/realm-java

官网地址:https://realm.io/docs/java/latest/#getting-started

集成方法:官网中或相关博客中已做详细说明

用于学习的相关博客:

【Android】Realm详解
Realm For Android详细教程
郭霖微信推荐 地址
总结:目前git上一直在做更新维护,start数量也为7000多。数据库Realm,是用来替代sqlite的一种解决方案,它有一套自己的数据库存储引擎,比sqlite更轻量级,拥有更快的速度,并且具有很多现代数据库的特性,比如支持JSON,流式api,数据变更通知,自动数据同步,简单身份验证,访问控制,事件处理,最重要的是跨平台,目前已有Java,Objective C,Swift,React-Native,Xamarin这五种实现。和 SQLite 不同,它允许你在持久层直接和数据对象工作。在它之上是一个函数式风格的查询api,众多的努力让它比传统的SQLite 操作更快 。在as3.0以上版本的集成方法: api ‘io.realm:realm-android-library:2.1.1’。官网上推荐的插件化集成方法,在as3.0以上会报错。

相关博客:

个人感觉这篇博客,对这两个框架的优缺点分析的很到位。得出的结论大概是:
(一万条数据测试结果:添加,删除速度大大优于 Realm。而查询速度却大大逊色于 Realm。)
Android数据库框架GreenDao&Realm实战分析

SQLite数据库框架ORMLite与GreenDao的简单比较

你可能感兴趣的:(Android 数据库框架总结,总有一个适合你!)