目前较为流行的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通过实体对象类生成的Dao来实现, ? 具体实现如下图 1、初始化数据库操作对象(GreenDao自动生成的操作对象) ?
前言 之前在自己做项目的时候,用到了GreenDAO数据库,其实对于数据库辅助工具库从OrmLite,到litePal再到GreenDAO,总是在不停的切换,但是没有真正去了解他们的差异。...---- GreenDAO: 介绍:对象关系映射的数据库(ORM) ?...GreenDAO 官网地址 优点 性能高,号称Android最快的关系型数据库 内存占用小 库文件小,编译时间短 支持数据库加密 API简介易用 说了他的优点,那么我们来看下如何使用。...//省略 compile 'org.greenrobot:greendao:3.2.0' } ---- 注解 实体@Entity注解 schema:告知GreenDao当前实体属于哪个schema...为了方便学习推荐一篇文章greenDAO 3.2 初探或者查阅官网地址
GreenDao 之前的版本不敢苟同,使用起来繁琐异常,近期升级到3.1版本,发现已经支持了注释方式,比起之前的确实好很多,可以推荐使用了。 既然可以使用了,那我们开始学习如何使用它。...4 在dependencies 加入 将greendao代码加入进来 5 实现一个User类 关键的说明,注释,都写在上面了,一目了然 编译下代码,则生成对应一系列代码。
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个框架还是不错的。直接面向对象的,可以通过对对象的操作,实现数据的存储。...直接上干货 官网地址:http://greenrobot.org/greendao/ Github地址:https://github.com/greenrobot/greenDAO GreenDao 优点...注:GreenDao可以自定义数据库操作对象的路径示例如下: ? 此处路径对应的是APP的gradle文件,android节点内填写。...17 // 可能你已经注意到了,你并不需要去编写「CREATE TABLE」这样的 SQL 语句,因为greenDAO 已经帮你做了。...下次会为大家介绍通过使用greenDao来实现数据库的增删改查等操作。
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包名,也就是要放置这些类的包的路径。
的QueryBuilder API.greenDao的查询也支持延迟加载结果,当结果集很大的时候,它会节省内存和提高性能. 1.QueryBuilder QueryBuilder类让你不需要写SQL来构建查询条件....写SQL大多数人都不喜欢,并且容易出错,因为它需要在运行时才能反馈错误.QueryBuilder容易使用并且不需要写SQL.使用它,相比只想代码不容易产生bug,它的语法在编译时候就会检查完.以greenDao...greenDao支持唯一结果(0或1个结果)、和多个结果的查询.如果你期望唯一的结果,调用Query或者QueryBuilder的unique()方法,它会给你唯一的结果或者null(如果没有找到匹配的实体...以后,Query的实例对象绑定到构建query的线程中.这样,你可以安全的对Query对象设置参数而不受其他线程的干扰.如果其他线程试图对query对象设置参数或者执行绑定在其他线程的查询,greenDao...为了完全避免潜在的死锁,greenDao1.3引入了forCurrentThread()函数.它会返回本线程的Query实例,它在当前线程可以安全的使用.每次调用forCurrentThread(),传入的参数和使用
由于我们直接操作数据库比较麻烦,而且管理起来也非常的麻烦,以前用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一下。
而今天的主角便是 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进行数据库的增删改查时及其方便,而且性能极佳。
这两个框架思想都差不多,都是把面向对象映射成关系型语言, 主要区别有以下几个: 1. greenDAO的version等数据库属性设置都是在对应的模型类里面完成的,以Java class的属性变量的形式存储...图片发自简书App 2.greenDAO将会生成Java数据对象(实体)和DAO对象。这些DAO对象被用来让实体有最好的合理映射射方式。...而LitePal是直接将Java模型类映射成SQLite数据库对象; 3.添加关系数据表的属性时,greenDAO通过生成的Java实体类的实例调用对应数据类型的方法进行属性添加: ?...图片发自简书App 4.两个框架的增删改查操作风格不一(下面列举一个查询例子的代码片段): greenDAO: ? 图片发自简书App LitePal: ?
现在,使用数据库存储时候,一般都会使用一些第三方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
insertOrReplace 插入数据,传入的对象主键如果存在于数据库中,有则更新,否则插入 实体对象为参数
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语句进行了封装。
比较出名的数据库框架 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
首先是greendao的配置 GreenDao配置 在工程的build.grdle中,如下: buildscript { repositories { google()...:3.2.1' } } apply plugin: 'org.greenrobot.greendao' greendao { schemaVersion 1//数据库版本号...GreenDao的基本配置就已经完成了,下面我们编写一个实体类。...; import com.bestgo.callshow.db.greendao.gen.DaoMaster; import com.bestgo.callshow.db.greendao.gen.DaoSession...; import org.greenrobot.greendao.query.QueryBuilder; import java.util.List; /** * 作者:jiuqunZhang
领取专属 10元无门槛券
手把手带您无忧上云