greendao连接mysql_ORM 框架之 greenDAO 使用心得

前言

我相信,在平时的开发过程中,大家一定会或多或少地接触到 SQLite。然而在使用它时,我们往往需要做许多额外的工作,像编写 SQL 语句与解析查询结果等。所以,适用于 Android 的ORM 框架也就孕育而生了,现在市面上主流的框架有 OrmLite、SugarORM、Active Android、Realm 与 GreenDAO。而今天的主角便是 greenDAO,下面,我将详解地介绍如何在 Android Studio 上使用 greenDAO,并结合代码总结一些使用过程中的心得。

关于 greenDAO

23a734ebde144eee2a1aa54d79b56e79.png

简单的讲,greenDAO 是一个将对象映射到 SQLite 数据库中的轻量且快速的 ORM 解决方案。(greenDAO is a light & fast ORM solution that maps objects to SQLite databases.) 而关于 ORM (Object Relation Mapping - 对象关系映射)的概念,可参见 Wikipedia。

GREENDAO 设计的主要目标一个精简的库

性能最大化

内存开销最小化

易于使用的 APIs

对 Android 进行高度优化

GREENDAO 设计的主要特点greenDAO 性能远远高于同类的 ORMLite,具体测试结果可见官网

greenDAO 支持 protocol buffer(protobuf) 协议数据的直接存储,如果你通过 protobuf 协议与服务器交互,将不需要任何的映射。

与 ORMLite 等使用注解方式的 ORM 框架不同,greenDAO 使用「Code generation」的方式,这也是其性能能大幅提升的原因。

DAO CODE GENERATION PROJECT

9eb2681d41f7110974a7a483200342bd.png

这是其核心概念:为了在我们的 Android 工程中使用 greenDAO ,我们需要另建一个纯 Java Project,用于自动生成后继 Android 工程中需要使用到的 Bean、DAO、DaoMaster、DaoSession 等类。

CORE CLASSES & MODELLING ENTITIES

关于以上几个类的相关概念与作用,我将在下面的代码(注释)中详细讲解。当然,你也可以在 官网 中找到相关介绍。

让我们开始吧

一. 在 ANDROID 工程中配置「GREENDAO GENERATOR」模块在 .src/main 目录下新建一个与 java 同层级的「java-gen」目录,用于存放由 greenDAO 生成的 Bean、DAO、DaoMaster、DaoSession 等类。

be767e3eeb6a5a492c82fbcbcd05ca00.png

1c783475779fbe0887f6bda9025c47fa.png

配置 Android 工程(app)的 build.gradle,如图分别添加 sourceSets 与dependencies。

052bc09c70c5f84e1fe8d50f1d8cc4f1.pngsourceSets {

main {

java.srcDirs = ['src/main/java', 'src/main/java-gen']

}

}compile 'de.greenrobot:greendao:1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值