Android目前流行三方数据库ORM分析及对比

Android目前流行三方数据库ORM分析及对比
最新回答
欲往

2020-09-15 00:22:58

Android目前流行的三方数据库ORM框架主要有GreenDao、LitePal、Afinal、ORMLite、SugarORM、Realm、LiteOrm和DBFlow,其中Realm性能表现最佳,GreenDao在基于Android SQLite的框架中性能最强。 以下是对这些框架的详细分析及对比:

常用数据库框架介绍
  • GreenDao

    简单介绍:GreenDao是为Android设计的对象关系映射(ORM)工具,提供了对象到关系型数据库SQLite的接口。它通过创建“生成器”工程生成具体代码,相比其他ORM框架具有出众性能。

    特点:不涉及反射,依赖代码生成,性能强悍。

  • LitePal

    简单介绍:LitePal使开发者使用SQLite数据库变得非常容易,无需写SQL语句即可完成大部分数据库操作,包括创建表、更新表、约束操作、聚合功能等。

    特点:简化数据库操作,适合快速开发。

  • Afinal

    简单介绍:Afinal是一个Android的SQLite ORM和IOC框架,同时封装了Android中的HTTP框架。FinalDB模块支持一行代码进行增删改查,支持一对多、多对一等查询。

    特点:集成HTTP框架,功能全面。

  • ORMLite

    简单介绍:ORMLite(Object Relational Mapping Lite)提供轻量级持久化Java对象到SQL数据库的功能,避免了复杂性和标准ORM包的开销。它支持JDBC连接的SQL数据库,也支持原生Android数据库API调用SQLite。

    特点:轻量级,适合对性能有要求的场景。

  • SugarORM

    简单介绍:SugarORM使用简单的API即可完成创建和操纵数据,无需写复杂的SQL语句。它可以在原有的Bean上添加小的修改而复用Bean,简化数据库设计和创建过程,同时提供表的一对多支持。

    特点:API简单,易于上手。

  • Realm

    简单介绍:Realm是用来替代SQLite的一种解决方案,拥有自己的数据库存储引擎,比SQLite更轻量级,速度更快。它支持JSON、流式API、数据变更通知、自动数据同步、简单身份验证、访问控制、事件处理等功能,最重要的是跨平台。

    特点:性能优异,跨平台支持。

  • LiteOrm

    简单介绍:LiteOrm是Android上的一款数据库(ORM)框架库,速度快、体积小、性能高。开发者基本一行代码实现数据库的增删改查操作,以及实体关系的持久化和自动映射。

    特点:轻量、专注、性能优先。

  • DBFlow

    简单介绍:DBFlow综合了ActiveAndroid、Schematic、Ollie、Sprinkles等库的优点,性能非常高,效率紧跟GreenDao。它基于注解,使用APT技术在编译过程中生成操作类,使用方式和ActiveAndroid高度相似。

    特点:性能高,使用简单,支持多个数据库。

数据库性能比较
  • 性能对比图表

  • 性能总结

    Realm:性能表现最佳,支持跨平台,但并非采用SQLite持久化引擎,可能存在一些缺点。

    GreenDao:在基于Android SQLite的框架中性能最强悍,不涉及反射,依赖代码生成。

    其他框架:各有特点,性能上可能略逊于Realm和GreenDao,但在特定场景下可能更适用。

总结与建议
  • 选择依据:在选择ORM框架时,应考虑性能、易用性、功能需求以及跨平台支持等因素。
  • 亲身体验:开发者最好自己亲身体验不同框架,根据实际项目需求选择最合适的框架。
  • 持续关注:随着Android技术的发展,新的ORM框架可能不断涌现,开发者应持续关注行业动态,及时更新技术栈。