目前较为流行的Android的ORM框架就是GreenDao, ORM就是关系映射(Object Relation Mapping),即对象关系映射。...大家应该对ORM框架有了初步的了解,下面我们就来使用GreenDao,我们就通过GreenDao的官网,http://greenrobot.org/greendao/ ,来学习如何对它进行使用。...GreenDao 3.0使用 我们跟着官网的步骤来对学习如何使用GreenDao 3.0 1) 导入相关的包 根据上面的内容,我们需要在在gradle的dependencies中导入如下内容...compile 'org.greenrobot:greendao:3.0.1' compile 'org.greenrobot:greendao-generator:3.0.0' 2) 配置gradle...:3.0.0' } } 同时一般我们还会添加如下的内容 greendao { schemaVersion 1 daoPackage 'com.example.jikeyoujikeyou.greendao2
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个框架还是不错的。直接面向对象的,可以通过对对象的操作,实现数据的存储。...直接上干货 官网地址:http://greenrobot.org/greendao/ Github地址:https://github.com/greenrobot/greenDAO GreenDao 优点...注:GreenDao可以自定义数据库操作对象的路径示例如下: ? 此处路径对应的是APP的gradle文件,android节点内填写。...17 // 可能你已经注意到了,你并不需要去编写「CREATE TABLE」这样的 SQL 语句,因为greenDAO 已经帮你做了。...下次会为大家介绍通过使用greenDao来实现数据库的增删改查等操作。
总述: 所有的增删改查都需要通过greendao通过实体对象类生成的Dao来实现, ? 具体实现如下图 1、初始化数据库操作对象(GreenDao自动生成的操作对象) ?
GreenDao 之前的版本不敢苟同,使用起来繁琐异常,近期升级到3.1版本,发现已经支持了注释方式,比起之前的确实好很多,可以推荐使用了。 既然可以使用了,那我们开始学习如何使用它。...4 在dependencies 加入 将greendao代码加入进来 5 实现一个User类 关键的说明,注释,都写在上面了,一目了然 编译下代码,则生成对应一系列代码。
前言 之前在自己做项目的时候,用到了GreenDAO数据库,其实对于数据库辅助工具库从OrmLite,到litePal再到GreenDAO,总是在不停的切换,但是没有真正去了解他们的差异。...---- GreenDAO: 介绍:对象关系映射的数据库(ORM) ?...GreenDAO 官网地址 优点 性能高,号称Android最快的关系型数据库 内存占用小 库文件小,编译时间短 支持数据库加密 API简介易用 说了他的优点,那么我们来看下如何使用。...//省略 compile 'org.greenrobot:greendao:3.2.0' } ---- 注解 实体@Entity注解 schema:告知GreenDao当前实体属于哪个schema...为了方便学习推荐一篇文章greenDAO 3.2 初探或者查阅官网地址
github : https://github.com/greenrobot/greenDAO 集成 // In your root build.gradle file: buildscript {...dependencies { classpath 'com.android.tools.build:gradle:3.1.1' classpath 'org.greenrobot:greendao-gradle-plugin...app projects build.gradle file: apply plugin: 'com.android.application' apply plugin: 'org.greenrobot.greendao...' // apply plugin dependencies { implementation 'org.greenrobot:greendao:3.2.2' // add library...} greendao { //数据库版本号 schemaVersion 1 //设置DaoMaster、DaoSession、Dao包名,也就是要放置这些类的包的路径。
由于我们直接操作数据库比较麻烦,而且管理起来也非常的麻烦,以前用ormlite,最近项目尝试用greendao来保存数据。 ?...使用gradle导入greendao包和greendao-generator包并配置我们的路径 其中greendao用于我们操作数据库的类。...而greendao-generator是用来产生我们的的数据库的数据类。包含了Bean、DAO、DaoMaster、DaoSession 。...我们在项目配置文件中添加如下代码: compile 'org.greenrobot:greendao:3.0.1' compile 'org.greenrobot:greendao-generator:...; import org.greenrobot.greendao.query.QueryBuilder; import java.text.DateFormat; import java.util.Date
GreenDao GreenDao3.1.0使用案例包含(增删查改,升级数据库),3.+版本比2....+更加便捷生成DaoMaster和DaoSession 本文项目地址 首先让你的android studio配置Greendao数据库 在build.gradle目录下 dependencies {...classpath 'com.android.tools.build:gradle:2.1.0' classpath 'org.greenrobot:greendao-gradle-plugin...:3.1.0' } 在app/build.gradle目录下设置 apply plugin: 'org.greenrobot.greendao' android { greendao{...配置,下面开始讲解怎么使用 GreenDao使用 如果遇到在生产包下找不到DaoMaster等文件,配置完上述代码要先Run一下。
这两个框架思想都差不多,都是把面向对象映射成关系型语言, 主要区别有以下几个: 1. greenDAO的version等数据库属性设置都是在对应的模型类里面完成的,以Java class的属性变量的形式存储...图片发自简书App 2.greenDAO将会生成Java数据对象(实体)和DAO对象。这些DAO对象被用来让实体有最好的合理映射射方式。...而LitePal是直接将Java模型类映射成SQLite数据库对象; 3.添加关系数据表的属性时,greenDAO通过生成的Java实体类的实例调用对应数据类型的方法进行属性添加: ?...图片发自简书App 4.两个框架的增删改查操作风格不一(下面列举一个查询例子的代码片段): greenDAO: ? 图片发自简书App LitePal: ?
而今天的主角便是 greenDAO,下面,我将详解地介绍如何在 Android Studio 上使用 greenDAO,并结合代码总结一些使用过程中的心得。 关于 greenDAO ?...简单的讲,greenDAO 是一个将对象映射到 SQLite 数据库中的轻量且快速的 ORM 解决方案。...GREENDAO 设计的主要目标 一个精简的库 性能最大化 内存开销最小化 易于使用的 APIs 对 Android 进行高度优化 GREENDAO 设计的主要特点 greenDAO 性能远远高于同类的...在 ANDROID 工程中配置「GREENDAO GENERATOR」模块 在 .src/main 目录下新建一个与 java 同层级的「java-gen」目录,用于存放由 greenDAO 生成的 Bean...「GreenDao Generator」的输出,你可以在这个类中通过对象、关系等创建数据库结构,下面我将以注释的形式详细讲解代码内容。
前言 Android 本地数据库有很多,Sqlite、Dbutils、LitePa、GreenDao等,其他的几个数据库框架都用过了,GreenDao还未在项目中用过,所以在这里记录下GreenDao...一、添加GreenDao支持 1.1 在项目根目录下的build.gradle下的代码添加下列代码: ?...1.2 在module下build.gradle(这里是app下的build.gradle)中添加下列代码: compile 'org.greenrobot:greendao:3.2.2' 并且在最上面添加...apply plugin: 'org.greenrobot.greendao' //新加的 1.3 在module下build.gradle android中配置greendao的信息 greendao...@Entity 表明这个实体类会在数据库中生成一个与之相对应的表 @Id 对应数据表中的 Id 字段 其他更多注解可以参考greendao官方网站:http://greenrobot.org/greendao
GreenDao框架分析 GreenDao3.0官网介绍 GreenDao文档 GreenDao的Github仓库 GreenDao 的使用在这里就不介绍了,上面的文档链接或者网络上的各种使用教程讲的都很详细...这里主要分析、对比一下GreenDao框架 在原生的基础之上进行了怎么样的封装。 在进行源码分析之前我们先说一下GreenDao 的优缺点,然后在下面的阅读过程中自己进行体会。...greendao-framework.png GreenDao底层封装 Database StandardDatabase实现Database接口,内部代理SQLiteDatabase。...greendao.png GreenDao访问层 提供 XXEntity 数据模型对象、数据模型对象的Properties用来做每个字段的快速访问以及操作数据模型的XXEntityDao。 ?...green-session.png GreenDao的优化 GreenDao 的优化主要体现在 DaoConfig 这个类中。
https://micro.blog.csdn.net/article/details/50479917 Github版 CSDN版 本篇文章不是介绍GreenDao...的配置和基础使用,记录一下GreenDao缓存的问题,帮助遇到同样问题的朋友找到原因和方法,下面是示例: 场景重现 //第一次查询 List chats = daoSession.getChatSessionDao...GreenDao配置与使用 GreenDao详细的配置和Demo可以参考: ORM 框架之 greenDAO 使用心得 GreenDao PS: 你可以关注的我Github、CSDN和微博
目前android经常用的orm框架主要有greenDAO、OrmLite、AndrORM。 综合了网上的各种评价,greenDAO的运行效率最高,内存消耗最少,性能最佳。...因此决定采用greenDAO框架,对项目的orm框架进行改进。 greenDAO与ORMLite性能对比 经过两天的修改,终于将项目里的数据库相关的都优化完了。...在这过程中,发现greenDAO的性能确实不错,而且使用相当方便,不再需要涉及到任何的sql语言,可以直接通过对象类进行建表、增删改查等,尤其是api接口又方便易懂。...一、greenDAO相关 1.greenDAO官网:http://greendao-orm.com/ 2.项目下载地址:https://github.com/greenrobot/greenDAO(.../issues/34 由上可见,使用greenDAO进行数据库的增删改查时及其方便,而且性能极佳。
GreenDao概述 如果Android项目中要使用GreenDAO框架,需要先创建一个Java项目用于生成实体类和DAO类,然后在Android项目中使用这些类,在此过程中分别需要对Android项目添加...GreenDAO的核心包依赖和对Java项目添加generator包依赖,所以解析GreenDAO的源码需要解析两部分,而这里只解析GreenDAO核心包在Android项目中的工作原理,generator...这四个核心类的功能体系如下图所示: DaoMaster GreenDao框架管理类,该类对数据库相关管理操作进行封装 我们知道在使用GreenDAO时候,我们的入口点就是通过DaoMaster...原因是GreenDao在查询这块加了缓存,有趣吧,GreenDao在查询时使用了弱引用WeakReference,假如第一次查询时候我查询了小明这个Student的数据,那么它将把小明加入一个SparseArray...可以这么说,我们之所以使用GreenDao管理本地数据库无需与SQL语句打交道,就是因为GreenDao框架在这一层已经对大部分数据库操作SQL语句进行了封装。
现在,使用数据库存储时候,一般都会使用一些第三方ORM框架,比如GreenDao。...在Android开发中,集成Greendao通常需要如下几步: 首先,在项目的build.gradle文件中添加依赖: classpath 'org.greenrobot:greendao-gradle-plugin...plugin implementation 'org.greenrobot:greendao:3.3.0' 为了方便操作GreenDao数据库,我们还需要对其进行封装。...; import org.greenrobot.greendao.annotation.Entity; import org.greenrobot.greendao.annotation.Generated...; import org.greenrobot.greendao.annotation.Id; import org.greenrobot.greendao.annotation.Unique; import
比较出名的数据库框架 GreenDao使用步骤: 1、app目录下的build.gradle文件 添加依赖 compile 'org.greenrobot:greendao:3.2.0' 顶部添加插件...apply plugin: 'org.greenrobot.greendao' 2、根目录下的build.gradle文件 配置 dependencies { classpath...'org.greenrobot:greendao-gradle-plugin:3.2.1' } 3、app目录下的build.gradle文件 对generator生成文件配置 greendao
//cloud.tencent.com/developer/user/1148436/activities GreenDaoCompatibleUpdateHelper 一个能帮助你成功升级基于 greenDao...几个事实 GreenDao 目前的 3.+ 版,自动生成的代码的升级方式都是先删除原来的表格,再创建新的 /** WARNING: Drops all table on Upgrade!...@Override public void onUpgrade(Database db, int oldVersion, int newVersion) { Log.i("greenDAO",...) from (A'+B') then drop (A'+B') 代码简述 基于上面的二次修改和拓展 GreenDaoCompatibleUpdateHelper.java 顾名思义,兼容旧表性质的 greenDao...因为不具备默认值而导致出现 SQLiteConstraintException: NOT NULL constraint failed 错误,解决方法,采用 Integer Boolean 类型替换,这个你只能妥协,因为 greenDao
前序 GreenDao 相信很多 Android 开发者都熟悉,不知为何物的,这里不会再介绍它,建议自行百度,介绍文很多。...GreenDao本身已经是很方便了,但我觉得还是不够方便。所以有了下面的"故事"。阅读完这个"故事",从此你使用 GreenDao 真正需要你手写的将会单表是不超过10行!...故,选择读取Json GreenDao 的默认 main 函数 public class dao { public static void main(String[] args) throws...泛型约束 上面说的 T 泛型是属于 Dao 的配置类,稍作代码分析就可以看出,GreenDao 所有生成的数据表配置类都是继承于 AbstractDao 类。...protected pushVideoDao getReadDao() { return openReadableDb().getPushVideoDao(); /** 该函数由 GreenDao
前言 本文介绍了什么是ORM,ORMLite和GreenDao框架优劣分析,GreenDao实战分享,并给出源码demo。...目前比较成熟的ORM框架有:ORMLite、GreenDao、ormdroid、androrm、ActiveAndroid。本文主要介绍当下比较流行的两个框架:ORMLite和GreenDao。...根据本人的实战经验,推荐大家使用GreenDao。...效率: 对数据进行insert和update时GreenDao的效率是ORMLite的两倍,执行read操作时GreenDao的效率达到了ORMLite的四倍之多。...2 GreenDao使用 1 引入GreenDao框架 Android studio : compile 'org.greenrobot:greendao:2.2.1' compile 'org.greenrobot
领取专属 10元无门槛券
手把手带您无忧上云