您的位置:首页 > 数据库

安卓本地轻量级数据库操作框架 greenDao3.2.2 详细教程附带Demo①——集成环境,开辟难题。

2017-07-05 16:55 651 查看

欢迎安卓本地轻量级数据库操作框架 greenDao3.2.2 学习之旅。

本套框架博客系列博客目录:

第一篇:认识 greenDao3.2.2 框架,集成环境,开辟难题。

第二篇:简单的进行 增、删、查、改 操作。

第三篇:一对多的操作。

一、认识数据库greenDao。

①、前言。

①、来到这篇文章,相信你也了解到greenDao的火热之处。的确,众人的眼光是雪亮的,在安卓系统里面有本身内置的sqllite ,之前我们都是使用原生的SQLiteOpenHelper方法,这种方法对自己来说比较方便易懂。

②、利用原生的SQLiteOpenHelper方法,在使用过程中感觉很繁琐,从建表到对表的增删改查等操作,如果表对象的属性很多,就需要使用大量的代码来执行建表、插入等。在代码执行中还需要对数据库和游标的进行及时关闭(开启使用,用完关闭),而且还需要部分sql语言,这在开发中产生bug进行调试时尤其不方便。

③、在网上通常说orm(Object Relational Mapping)框架,知道是采用元数据来描述对象一关系映射细节,元数据一般采用XML格式,并且存放在专门的对象一映射文件中。操作安卓数据库常用的ORM框架有greenDAO、OrmLite、AndrORM,特点是轻便,快捷操作数据库。

②、为什么选择greenDao?

①、首先我们看看使用教程的 GitHub地址 : https://github.com/greenrobot/greenDAO 以及官网地址 http://greenrobot.org/greendao ,作为 EventBus 框架的开发团队,大家都比较熟悉松散耦合的Android开源库EventBus,热门的事件分发框架。

②、作为官网,这样诠释greenDao的功能:

最高性能(可能是Android最快的ORM); 我们的基准也是开源的。

易于使用的功能强大的API涵盖关系和联接。

最小的内存消耗。

小图书馆大小(<100KB),以保持建筑时间低,并避免65k方法限制。

数据库加密:greenDAO支持SQLCipher,以保护用户的数据安全。

强大的社区:超过5.000 GitHub明星表明有一个强大和积极的社区。

③、为了验证和其他的数据库的速度较量,官网贴出这个表,可以看出和其他数据库的访问速度对比:



二、根据官网开始集成greenDao环境。

①、首先在工程目录下build.gradle文件加入结果如下:

buildscript {
repositories {
jcenter()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.0'
classpath 'org.greenrobot:greendao-gradle-plugin:3.2.2'

}
}


如图:



②、首先在模块目录下build.gradle文件加入结果如下:

apply plugin: 'com.android.application'
apply plugin: 'org.greenrobot.greendao' // 添加插件

dependencies {
compile 'org.greenrobot:greendao:3.2.2' // 添加库
}


③ 在android节点上加上以下:

greendao {
schemaVersion 1 //版本号
/**
* 输出dao的数据库操作实体类文件夹(相对路径 包名+自定义路径名称,包将创建于包名的直接路径下)
*/
daoPackage 'com.devices.greendao.model.greendao'
/**
* greenDao实体类包文件夹
*/
targetGenDir 'src/main/java'
}




自此,集成环境大工告成。

三、根据官网开始集成greenDao3.2.2 环境,出现问题以及解决方法。

如果出现了以下问题:

Error:Unable to find method 'org.gradle.api.tasks.TaskInputs.file(Ljava/lang/Object;)Lorg/gradle/api/tasks/TaskInputFilePropertyBuilder;'.
Possible causes for this unexpected error include:<ul><li>Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.)
<a href="syncProject">Re-download dependencies and sync project (requires network)</a></li><li>The state of a Gradle build process (daemon) may be corrupt. Stopping all Gradle daemons may solve this problem.
<a href="stopGradleDaemons">Stop Gradle build processes (requires restart)</a></li><li>Your project may be using a third-party plugin which is not compatible with the other plugins in the project or the version of Gradle requested by the project.</li></ul>In the case of corrupt Gradle processes, you can also try closing the IDE and then killing all Java processes.




解决方法: 其原因在于 gradle版本惹的祸,你使用gradle3.5版本或以上就没事了,所以要下载这个版本,百度一大堆,这里不提供下载地址了。下载之后的压缩包,解压在本地的as根目录下的gradle文件夹下。 之后在as设置gradle路径,使用本地的,选择gradle3.3 版本,同步工程即可。



参考链接:http://blog.csdn.net/rodulf/article/details/70992292
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐