GreenDao介绍
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倍的负载实体。典型应用的加载速度是最相关的。
优点还包括以下这几点
- greenDAO的核心库小于100K的大小,所以加入greenDAO不会伤害你的APK大小
- 开源
GreenDao介绍的更多相关文章
- greenDao 介绍
greenDAO是一个针对Android的轻快速ORM解决方案,它将对象映射到SQLite数据库.http://greenrobot.org/greendao/ greenDAO is a light ...
- Android数据存储之GreenDao 3.0 详解
前言: 今天一大早收到GreenDao 3.0 正式发布的消息,自从2014年接触GreenDao至今,项目中一直使用GreenDao框架处理数据库操作,本人使用数据库路线 Sqlite----> ...
- android高效ORM数据库框架greenDao使用
因为项目中多处用到了数据库,需要对数据库频繁的读写操作,虽然android 自带的SQLiteOpenHelper的.这种方式比较方便易懂,但是在使用过程中需要写很多的sql语句,而且需要及时的关闭和 ...
- Android greenDAO 数据库 简单学习之基本使用
看网上对greenDAO介绍的不错,今天就动手来试一把,看看好不好使. greenDAO 官方网站:http://greendao-orm.com/ 代码托管地址:https://github.com ...
- GreenDao 数据库:使用Raw文件夹下的数据库文件以及数据库升级
一.使用Raw文件夹下的数据库文件 在使用GreenDao框架时,数据库和数据表都是根据生成的框架代码来自动创建的,从生成的DaoMaster中的OpenHelper类可以看出: public sta ...
- greenDao:操作数据库的开源框架
greenDAO: Android ORM for your SQLite database 1. greenDao库获取 英文标题借鉴的是greendrobot官网介绍greenDao时给出的Tit ...
- Android ORM 框架之 greenDAO 使用心得
前言 我相信,在平时的开发过程中,大家一定会或多或少地接触到 SQLite.然而在使用它时,我们往往需要做许多额外的工作,像编写 SQL 语句与解析查询结果等.所以,适用于 Android 的ORM ...
- 快速入门GreenDao框架并实现增删改查案例
大家的项目中不可避免的使用到SQLite,为此我们要花费心思编写一个增删改查框架.而一个好的ORM框架则能够给我们带来极大的方便,今天给大家讲解一个非常火热的ORM-GreenDao. 基本概念 Gr ...
- GitHub上排名前100的Android开源库介绍(来自github)
本项目主要对目前 GitHub 上排名前 100 的 Android 开源库进行简单的介绍,至于排名完全是根据 GitHub 搜索 Java 语言选择 (Best Match) 得到的结果,然后过滤了 ...
随机推荐
- Android Touch事件传递机制详解
Android开发的朋友经常处理各种触摸事件,然而在触摸事件的传递过程中主要用到三个方法:dispatchTouchEvent().onInterceptTouchEvent()和onTouchEve ...
- Nodejs:Glob对象
模块Glob: glob主要用处为筛选文件 API样例: var globInstance = new glob.Glob("@(a|a1|b).js",{nonull:true, ...
- angular service provider
关于 angular service factory provider 方面有很多,我也来写一篇加深下印象 provider 是一切方法的基础,所以功能也最强,provider 用来定义一个可以被 ...
- WPF 组合快捷键(Ctrl+C)
页面程序: <Window x:Class="WpfDataGrid.Window1" xmlns="http://schemas.microsoft ...
- linux后台查看共享内存和消息队列的命令
ipcs ipcs -q : 显示所有的消息队列 ipcs -qt : 显示消息队列的创建时间,发送和接收最后一条消息的时间 ipcs -qp: 显示往消息队列中放消息和从消息队列中取消息的进程ID ...
- UWP&WP8.1 重新绘制图片 WriteableBitmap用法 图片转byte[]数组,byte[]数组转图片
---恢复内容开始--- WriteableBitmap 是UWP和WP8.1绘制图片的,重组图片的最重要方法.方法较为简单,方法多样性. 通过查看文档,WriteableBitmap的继承性是 ...
- python_excel
1. xlrd, xlwt, xlutils的关系 Python中一般使用xlrd(excel read)来读取Excel文件,使用xlwt(excel write)来生成Excel文件(可以控制Ex ...
- WPF 仪表盘 刻度盘 动态 加载中 开源
1. 表盘 参数可以设置, codeproject上写的.网址在这里. 源码里有demo,很详细. 源码在这里. 2. 动态Loading 截图效果跟实际有点不一样. 自己把源码写成 资源就好用了呗 ...
- IntelliJ IDEA 12 与 Tomcat7 配置
IDEA 全称 IntelliJ IDEA,是java语言开发的集成环境,IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手.代码自动提示.重构.J2EE支持.各类版本工具( ...
- MongoDB安装及入门
下载 windows下的是3.2的版本 https://docs.mongodb.com/manual/tutorial/install-mongodb-on-windows/ mongodb采用27 ...