GreenDao简明教程(基本介绍,Introduction)

来源:互联网 发布:板式家具用什么软件 编辑:程序博客网 时间:2024/04/25 10:11

这是一篇关于greenDao的简明使用教程(其实就是官网tutorial的一个大概的翻译)。

一共有四篇,链接如下:

1.基本介绍

2.实体建模

3.查询

4.关系


基本介绍


如上图,greendao是一个在android上orm工具。他可以帮助我们把android上的sqlite操作简化成对象的操作。



如上图,你需要在你的主Android工程之外再建立一个generator project.这是一个纯java的项目。

在这个项目里你需要在classpath中引用greenDAO-generator.jar,和freemarker.jar这两个jar包。
然后在这个工程中使用greenDAO-generator中的方法定义你数据库的实体和关系。
最后通过freemarker生成你的android工程要生用的DAO和Entiities代码。具体的定义方法我们后面再讲。
---------------------------------------------------------

做完了上面的步骤,下面就可以愉快的写我们的android工程了。
这里别忘了,为了使用generator生成的Entities和DAO方法,我们需要在我们的Android工程中引入greenDAO.jar这个包


如上图,这几个类是GreenDao的核心:(他们是通过之前代码生成的方式添加到你的工程中去的。)


DaoMaster:DaoMaster 是所有GreenDao使用的开始。DaoMaster封装了Sqlitedatabase并且在指定的schema中管理DAO类。他通过静态方法创建和删除tables。他的内部类OpenHelper, DevOpenHelper继承自SQLiteOpenHelper,并在sqlite database中创建schema。

DaoSession:在指定的schema中管理所有的DAO对象。同样提供基本的持久化方法,比如对实体对象的insert、load、update、refresh、还有delete操作。(在新版本中,DaoSession同样负责保持identity scope,可以简单理解为查询对象的一种缓存技术,详见session documentation

DAOs:提供对实体的持久化和query,greenDao为每一个实体创建一个DAO.他提供比DaoSession更丰富的方法,比如count, loadAll, 和insertInTx(这个方法支持批量插入).

Entities:greendao生成的持久化对象,与数据库的row一一对应。可以理解成简单的POJO或者javaBean。

---------------------------------------------------------------

核心代码的初始化

官方的example是这样给出的。

helper = new DaoMaster.DevOpenHelper(this"notes-db"null);
db = helper.getWritableDatabase();
daoMaster = new DaoMaster(db);
daoSession = daoMaster.newSession();
noteDao = daoSession.getNoteDao();

example这里假设之前通过代码生成的方式生成了一个Note实体。这样通过他的DAO(NoteDao)我们就可以完成对该实体的持久化和查询。





0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 小米6手机黑屏打不开怎么办 小米手机王者荣耀黑屏怎么办 小米5c手机黑屏怎么办 小米2s开机闪退怎么办 小米手机打不开机怎么办 苹果手机打电话闪退怎么办 红米手机通话时黑屏怎么办 小米手机通话时是黑屏怎么办? 华为手机通话时出现黑屏怎么办 微信屏幕变黑了怎么办 乐视手机打不开机怎么办 金立手机屏幕不亮怎么办 笔记本开不了机怎么办屏幕黑屏 红米4刷机失败怎么办 红米手机开不了机怎么办 红米not开不了机怎么办 红米2开不起机怎么办 小米手机免提声音小怎么办 红米手机1s黑屏怎么办 红米2完全黑屏怎么办 红米note3接电话黑屏怎么办 红米note3死机黑屏怎么办 红米note2开机之后黑屏怎么办 红米手机白屏怎么办 红米4黑屏打不开怎么办 oppo手机拨打电话时黑屏怎么办 华为手机拨打电话时黑屏怎么办 小米6x拨电话黑屏怎么办 魅族手机打电话黑屏怎么办 三星手机拨打电话时黑屏怎么办 华为畅享5打电话黑屏怎么办 小米note通话声音小怎么办 金立m5黑屏开不了机怎么办 金立手机光感器坏了怎么办 红掌根部烂了怎么办 魅族相册闪退怎么办 魅族手机闪退怎么办 苹果6手机主页面打不开怎么办 手机中病毒闪退怎么办 酷派手机开机黑屏怎么办啊 酷派手机黑屏打不开怎么办