greenDAO系列3--又是介绍

本文转自:http://my.oschina.net/u/1052509/blog/312543


摘要  greenDAO是一个适用Android的对象关系映射(ORM)工具。它为关系型数据库提供了面向对象接口。ORM工具(如greenDAO)会为你做许多重复性的工作并提供简单的接口访问数据。

    greenDAO是一个适用Android的对象关系映射(ORM)工具。它为关系型数据库提供了面向对象接口。ORM工具(如greenDAO)会为你做许多重复性的工作并提供简单的接口访问数据。


DAO 代码生成项目

    要在Android项目中使用greenDAO,需要创建第二个项目:”生成器项目“。它的任务是为你的项目生成相应的实体和DAO代码。生成器项目是普通的java(非Android)项目。确保greenDAO生成器类库(greenDAO-generator.jar)和Freemarker类库(freemarker.jar)在classpath中。创建一个可执行的java类,构建实体然后开始代码生成。详情可查看 “构建实体”章节。


核心类

    完成代码生成后,就可在Android项目中使用greenDao了(确保生成的代码在Android项目的源文件目录下)。别忘了在Android项目中引入greedDAO的核心类库(greenDao.jar)。下面的核心类是greenDAO最重要的接口:

DaoMaster:greenDAO的入口。DaoMaster持有数据库对象(SQLiteDatabase)并管理DAO类(非对象)。它有创建表或删除表的静态方法,其内部类OpenHelper和DevOpenHelper是SQLiteOpenHelper的实现。

DaoSession:管理所有的DAO对象,可通过相应的get方法获取DAO。DaoSession也提供了常见的持久化实体的方法,如:insert,load,update,refresh和delete。并且,一个DaoSession对象在一个作用域(identity scope)内保持会话。更多详情,可以查看 “会话”章节。

DAOs:数据访问对象(DAOs)用于持久化和查询实体。每个实体,greenDAO对应一个DAO。相比DaoSession,它提供更多的持久化方法,如:count,loadAll和insertInTx。

Entitys:持久化对象。通常,实体是被生成的(并非一定),使用一些标准的java属性(如POJO或JavaBean),代表数据库表中的一行。


核心初始化

    下面的核心例子展示了第一步,初始化数据库和核心greenDAO对象:

?
1
2
3
4
5
helper =  new  DaoMaster.DevOpenHelper( this "notes-db" null );
db = helper.getWritableDatabase();
daoMaster =  new  DaoMaster(db);
daoSession = daoMaster.newSession();
noteDao = daoSession.getNoteDao();

    上面的例子假设有一个“Note”实体。使用它的DAO(noteDao 对象),可以对其调用持久化操作。


猜你喜欢

转载自blog.csdn.net/wurensen/article/details/47905489
今日推荐