首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    GreenDao查询,Querying

    的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(),传入的参数和使用

    6700

    Android数据库开源框架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 这个类中。

    1.5K30

    Android ORM 框架之 greenDAO

    而今天的主角便是 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」的输出,你可以在这个类中通过对象、关系等创建数据库结构,下面我将以注释的形式详细讲解代码内容。

    1.2K60

    Android GreenDao的基本使用

    前言 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

    2K30

    开源数据库框架greenDAO

    目前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进行数据库的增删改查时及其方便,而且性能极佳。

    2.3K50

    小结:greenDAO和LitePal的区别

    这两个框架思想都差不多,都是把面向对象映射成关系型语言, 主要区别有以下几个: 1. greenDAO的version等数据库属性设置都是在对应的模型类里面完成的,以Java class的属性变量的形式存储...图片发自简书App 2.greenDAO将会生成Java数据对象(实体)和DAO对象。这些DAO对象被用来让实体有最好的合理映射射方式。...而LitePal是直接将Java模型类映射成SQLite数据库对象; 3.添加关系数据表的属性时,greenDAO通过生成的Java实体类的实例调用对应数据类型的方法进行属性添加: ?...图片发自简书App 4.两个框架的增删改查操作风格不一(下面列举一个查询例子的代码片段): greenDAO: ? 图片发自简书App LitePal: ?

    1.2K10

    拆轮子系列之理解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语句进行了封装。

    1.1K40
    领券