GreenDao介绍

greenDAO 是一个将对象映射到 SQLite 数据库中的轻量且快速的 ORM 解决方案

何为ORM?

ORM(Object/Relation Mapping): 对象/关系映射

ORM 主要解决对象-关系的映射



ORM的思想:将关系数据库中表中的记录映射成为对象,以对象的形式展现,程序员可以把对数据库的操作转化为对对象的操作。

ORM的必要性

在写程序的时候,我们程序员通常是对对象进行一系列的操作,而在使用SQLite时,我们往往要从面向对象中脱离出去,需要做许多额外的工作,像编写 SQL 语句与解析查询结果等(书写SQL和查询结果是相当乏味和耗时的任务),而如果运用ORM这些框架的话,就能对原来的操作进行一系列的封装,最好的操作也落在熟悉的对象上,这样开发的更加快捷,效率更高。

市面上主流的ORM框架有

OrmLite :JDBC和Android的轻量级ORM java包

Sugar :用超级简单的方法处理Android数据库

GreenDAO :一种轻快地将对象映射到SQLite数据库的ORM解决方案

ActiveAndroid :以活动记录方式为Android SQLite提供持久化

SQLBrite :SQLiteOpenHelper 和ContentResolver的轻量级包装

Realm 移动数据库:一个SQLite和ORM的替换品

GreenDao特点

greenDAO的本质是提供一种面向对象接口存储在关系数据库的SQLite数据。刚刚定义的数据模型,并greenDAO将创建的Java数据对象(实体)和DAO的(数据访问对象)。这将节省您大量的枯燥的代码,只是移动数据来回。除此之外,greenDAO提供一些先进的ORM功能就像一个会话缓存,预先加载,和积极的实体。

性能(官网上的解释)

我们知道所有的ORM的,greenDAO是最快的。greenDAO不作性能方面任何妥协。数据库是非常适合存储大量数据,从而加速事项。使用greenDAO,大多数实体可以插入,更新和在速率加载每秒几千实体。

我们在greenDAO的表现充满信心,并邀请您比较greenDAO对其他的框架。我们开源了我们的测试充分的透明度。下图比较了Android的greenDAO,OrmLite和ActiveAndroid 3个最流行的ORM解决方案(根据基于GitHub上星和Appbrain的统计普及)。greenDAO插入和更新实体快约2倍,并围绕比ORMLite快4倍的负载实体。典型应用的加载速度是最相关的。

优点还包括以下这几点

  1. greenDAO的核心库小于100K的大小,所以加入greenDAO不会伤害你的APK大小
  2. 开源

GreenDao介绍的更多相关文章

  1. greenDao 介绍

    greenDAO是一个针对Android的轻快速ORM解决方案,它将对象映射到SQLite数据库.http://greenrobot.org/greendao/ greenDAO is a light ...

  2. Android数据存储之GreenDao 3.0 详解

    前言: 今天一大早收到GreenDao 3.0 正式发布的消息,自从2014年接触GreenDao至今,项目中一直使用GreenDao框架处理数据库操作,本人使用数据库路线 Sqlite----> ...

  3. android高效ORM数据库框架greenDao使用

    因为项目中多处用到了数据库,需要对数据库频繁的读写操作,虽然android 自带的SQLiteOpenHelper的.这种方式比较方便易懂,但是在使用过程中需要写很多的sql语句,而且需要及时的关闭和 ...

  4. Android greenDAO 数据库 简单学习之基本使用

    看网上对greenDAO介绍的不错,今天就动手来试一把,看看好不好使. greenDAO 官方网站:http://greendao-orm.com/ 代码托管地址:https://github.com ...

  5. GreenDao 数据库:使用Raw文件夹下的数据库文件以及数据库升级

    一.使用Raw文件夹下的数据库文件 在使用GreenDao框架时,数据库和数据表都是根据生成的框架代码来自动创建的,从生成的DaoMaster中的OpenHelper类可以看出: public sta ...

  6. greenDao:操作数据库的开源框架

    greenDAO: Android ORM for your SQLite database 1. greenDao库获取 英文标题借鉴的是greendrobot官网介绍greenDao时给出的Tit ...

  7. Android ORM 框架之 greenDAO 使用心得

    前言 我相信,在平时的开发过程中,大家一定会或多或少地接触到 SQLite.然而在使用它时,我们往往需要做许多额外的工作,像编写 SQL 语句与解析查询结果等.所以,适用于 Android 的ORM  ...

  8. 快速入门GreenDao框架并实现增删改查案例

    大家的项目中不可避免的使用到SQLite,为此我们要花费心思编写一个增删改查框架.而一个好的ORM框架则能够给我们带来极大的方便,今天给大家讲解一个非常火热的ORM-GreenDao. 基本概念 Gr ...

  9. GitHub上排名前100的Android开源库介绍(来自github)

    本项目主要对目前 GitHub 上排名前 100 的 Android 开源库进行简单的介绍,至于排名完全是根据 GitHub 搜索 Java 语言选择 (Best Match) 得到的结果,然后过滤了 ...

随机推荐

  1. adv钓鱼题

    4 10 4 5 6 2 10 2 10 4 5 6 2 10 2 60 1 20 29 20 50 20 60 1 20 20 20 60 20 #include<iostream> u ...

  2. h5移动版云胶片系统

    h5移动版云胶片系统. 最近开了一个医疗用的云胶片,可以对图片放大.图片缩小,图片移动,图片调窗,图片切换,图片播放,图片变灰等等功能.如下图:

  3. WP8.1 侧边滑动Item

    效果图 我看ios 和安卓上有好多类似的Item的效果,UWP上有微软官方的库,其中也有类似得效果,看样子WP8.1没有啊,顺便我的程序也是需要,我也就仿了一个. 具体思路是: 触摸控制GRId在CA ...

  4. ceph network introduce

    网络结构 Ceph 使用以太网连接内部各存储节点以及连接 client 和集群.Ceph 推荐使用两个网络: 前端(北向)网络( a public (front-side) network):连接客户 ...

  5. JavaScript增强AJAX基础

    <title>js类型</title> <meta http-equiv="content-type" content="text/html ...

  6. ISO8583报文协议

    最开始时,金融系统只有IBM这些大的公司来提供设备,象各种主机与终端等.在各个计算机设备之间,需要交换数据.我们知道数据是通过网络来传送的,而在网络上传送的数据都是基于0或1这样的二进制数据,如果没有 ...

  7. MyBatis基于注解的动态SQL——概览

  8. 返回值是TEXT的阿贾克斯方法

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. XPath 运算符

    XPath 表达式可返回节点集.字符串.逻辑值以及数字. XPath 运算符 下面列出了可用在 XPath 表达式中的运算符: 运算符 描述 实例 返回值 | 计算两个节点集 //book | //c ...

  10. Android 偶遇小问题解决方案集合

    1.Android 如何让EditText不自动获取焦点 解决方案:找一个EditText的父级控件把EditText默认的行为截断了!设置 android:focusable="true& ...