greenDAO文档翻译之二:介绍

greenDAO是Android平台下的对象/关系映射工具。它为关系型数据库SQLite提供了一个面向对象的接口。像greenDAO这样的ORM工具提供了简单好上手的接口来操作数据,这样一来你可以省掉很多重复性的工作。

Gradle插件和生成DAO代码

为了在你的Android项目里使用greenDAO,你需要添加greenDAO gradle插件和greenDAO库依赖:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'org.greenrobot:greendao-gradle-plugin:3.2.1'
} }
apply plugin: 'com.android.application'
apply plugin: 'org.greenrobot.greendao'
dependencies {
    compile 'org.greenrobot:greendao:3.2.0'
}

然后模型化你的实体并构建你的项目,比如在Android Studio中是通过“Build > Make Project”。

核心类

一旦你的项目构建完成,你就可以开始在你的Android项目中使用greenDAO了。

下面的核心类是greenDAO中非常关键的接口:

DaoMaster:它是使用greenDAO的切入点。DaoMaster类持有数据库对象(类似SQLiteDatabase),并为一个特定的模式(schema)管理着DAO类(不是对象)。它拥有创建表和销毁表的静态方法。它的内部类OpenHelper和DevOpenHelper实现了SQLiteOpenHelper,它们负责在SQLite数据库中创建这个模式(schema)。

DaoSession:为一个特定的模式(schema)管理着所有可用的DAO对象,从这些对象那里你可以使用其中一个getter方法获得到。DaoSession也提供对实体进行插入、加载、更新、刷新和删除等常见的持久化方法。最后,一个DaoSession对象也追踪一个身份记录。丰富详细的内容,请查看session文档

DAOs:实体的数据通过这些对象(DAOs)来实现持久和查询。greenDAO为每一个实体生成一个DAO类。它比DaoSession有更强大的方法,比如:count, loadAll和insertInTx。

Entities:可持久化对象。通常,像使用标准Java属性的对象(例如一个POJO或一个JavaBean)代表着数据库中的一行,便是实体的对象。

初始化核心

最后,下面的代码举例说明了初始化数据库和greenDAO核心类的第一步:

// do this once, for example in your Application class
helper = new DaoMaster.DevOpenHelper(this, "notes-db", null);
db = helper.getWritableDatabase();
daoMaster = new DaoMaster(db);
daoSession = daoMaster.newSession();
// do this in your activities/fragments to get hold of a DAO
noteDao = daoSession.getNoteDao();

这个例子假设了存在一个Note实体。通过DAO(noteDao对象),我们可以对这个特定的实体进行持久化操作。


原文档在这里,欢迎指正。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值