什么是GreenDao?
Greendao是一款用于數(shù)據(jù)庫(kù)創(chuàng)建與管理的框架,用來(lái)操作數(shù)據(jù)庫(kù),它省去了數(shù)據(jù)庫(kù)的建表操作和數(shù)據(jù)庫(kù)SQL的編寫(xiě)。
GreenDao的優(yōu)點(diǎn)
在主流的ORM第三方庫(kù)中,GreenDao對(duì)數(shù)據(jù)庫(kù)操作的速度是最快的,如圖:

除此之外,GreenDo性能高,可加密,使用簡(jiǎn)潔,可使代碼量大大減少
ORM的概念
greenDAO 是一款開(kāi)源的面向 Android 的輕便、快捷的 ORM 框架。
ORM(Object Relation Mapping對(duì)象關(guān)系映射)
其表現(xiàn)形式就是通過(guò)GreenDao將數(shù)據(jù)庫(kù)和Bean對(duì)象關(guān)聯(lián)起來(lái),其表現(xiàn)形式如下圖

如何使用GreenDao?
1. 添加依賴
首先在 ? build.gradle(Module:app) 中添加依賴
compile'org.greenrobot:greendao:3.2.0'
還有
greendao {
schemaVersion1 //數(shù)據(jù)庫(kù)版本號(hào)
daoPackage'work.design.dadi.greendaotest' // 設(shè)置DaoMaster、DaoSession、Dao 包名(自己更改)
targetGenDir'src/main/java'//設(shè)置DaoMaster、DaoSession、Dao目錄
}
然后還是這個(gè)文件 ?在build.gradle(Module:app) 中最上方加上
apply plugin:'org.greenrobot.greendao'
其次 在?build.gradle(Project) 中添加
classpath'org.greenrobot:greendao-gradle-plugin:3.2.1'
2. 創(chuàng)建實(shí)體類(lèi)

其中 注解部分
@Entity?:表明這個(gè)實(shí)體類(lèi)會(huì)在數(shù)據(jù)庫(kù)中生成一個(gè)與之相對(duì)應(yīng)的表
@Id:對(duì)象id,通過(guò)設(shè)置@Id(autoincrement = true)表示自增,只有當(dāng)Long/long時(shí)才有效
@Property:設(shè)置成員屬性名(表的列名),如果不設(shè)置此屬性表示默認(rèn)是類(lèi)成員名
@NotNull :表示此成員屬性非空
@Transient:標(biāo)識(shí)這個(gè)字段是自定義的,不會(huì)創(chuàng)建到數(shù)據(jù)庫(kù)表中
3. 生成Dao文件
點(diǎn)擊 Make Project(或者 Make Moudle 'App') 編譯一下工程 。如果配置正確,會(huì)在配置的包目錄下自動(dòng)會(huì)生成 DaoMaster,DaoSession 和 xxxDao 類(lèi) 。

DaoMaster,DaoSession 和 xxxDao建議點(diǎn)開(kāi)來(lái)看一下,因?yàn)槔锩娣庋b了很多東西。
4. 寫(xiě)增刪改查

創(chuàng)建一個(gè)fourAction的類(lèi),進(jìn)行增刪改查代碼的書(shū)寫(xiě)
然后在MainActivity中對(duì)方法進(jìn)行調(diào)用。