關(guān)于格林多

GreenDAO是一個(gè)輕量級、快速的ORM解決方案,用于將對象映射到SQLite數(shù)據(jù)庫。


GreenDao的優(yōu)勢

1.一個(gè)精簡的庫

2.性能最大化

3.內(nèi)存開銷最小化

4.易于使用的 APIs

5.對 Android 進(jìn)行高度優(yōu)化

GreenDao 3.0使用

API:

1.)實(shí)體@Entity注解

schema:告知GreenDao當(dāng)前實(shí)體屬于哪個(gè)schema

active:標(biāo)記一個(gè)實(shí)體處于活動(dòng)狀態(tài),活動(dòng)實(shí)體有更新、刪除和刷新方法

nameInDb:在數(shù)據(jù)中使用的別名,默認(rèn)使用的是實(shí)體的類名

indexes:定義索引,可以跨越多個(gè)列

createInDb:標(biāo)記創(chuàng)建數(shù)據(jù)庫表**

2.)基礎(chǔ)屬性注解

@Id :主鍵 Long型,可以通過@Id(autoincrement = true)設(shè)置自增長

@Property:設(shè)置一個(gè)非默認(rèn)關(guān)系映射所對應(yīng)的列名,默認(rèn)是的使用字段名舉例:@Property (nameInDb="name")

@NotNul:設(shè)置數(shù)據(jù)庫表當(dāng)前列不能為空

@Transient:添加次標(biāo)記之后不會(huì)生成數(shù)據(jù)庫表的列

3.)索引注解

@Index:使用@Index作為一個(gè)屬性來創(chuàng)建一個(gè)索引,通過name設(shè)置索引別名,也可以通過unique給索引添加約束

@Unique:向數(shù)據(jù)庫列添加了一個(gè)唯一的約束

4.)關(guān)系注解

@ToOne:定義與另一個(gè)實(shí)體(一個(gè)實(shí)體對象)的關(guān)系

@ToMany:定義與多個(gè)實(shí)體對象的關(guān)系


android studio 實(shí)際項(xiàng)目中使用

1,配置

在project下的gradle里面添加

在app里面添加

創(chuàng)建一個(gè)實(shí)體類

這里我只是做個(gè)demo 就只配了表面和主鍵

配好了ctrl+F9 編譯下當(dāng)前Module,greedao的插件就會(huì)在配置的路徑中生成相應(yīng)的代碼,

紅線是插件自動(dòng)生成的,2個(gè)沒有沒有畫的,是大神對版本升級時(shí)候?qū)?shù)據(jù)庫的操作。

在app入口初始化,這里我添加了版本升級的代碼。

下面這個(gè)是不用版本升級的代碼,對GreenDao的初始化

acitivty代碼

運(yùn)行結(jié)果

插入了5條數(shù)據(jù),刪除了第一條,更新了第二條。

版本升級的時(shí)候,注意當(dāng)字段改了之后,要更改數(shù)據(jù)庫版本號,若沒有的改變的話就不用改。

另外數(shù)據(jù)庫版本升級,demo中使用的是別人寫的一個(gè),采用的是把原來的數(shù)據(jù)拷貝一份然后刪除,重新創(chuàng)建數(shù)據(jù)庫,再把數(shù)據(jù)copy回去。

若是沒有對數(shù)據(jù)進(jìn)行升級相關(guān)操作而直接更改數(shù)據(jù)庫版本號的話,數(shù)據(jù)會(huì)在項(xiàng)目更新的時(shí)候丟失。

項(xiàng)目地址:

別star ,就一個(gè)demo。

收藏和點(diǎn)贊這個(gè)就行了

1.《怎么用apk修改軟件數(shù)據(jù)庫?總結(jié)很全面速看!安卓對數(shù)據(jù)庫操作的GreenDao的使用》援引自互聯(lián)網(wǎng),旨在傳遞更多網(wǎng)絡(luò)信息知識,僅代表作者本人觀點(diǎn),與本網(wǎng)站無關(guān),侵刪請聯(lián)系頁腳下方聯(lián)系方式。

2.《怎么用apk修改軟件數(shù)據(jù)庫?總結(jié)很全面速看!安卓對數(shù)據(jù)庫操作的GreenDao的使用》僅供讀者參考,本網(wǎng)站未對該內(nèi)容進(jìn)行證實(shí),對其原創(chuàng)性、真實(shí)性、完整性、及時(shí)性不作任何保證。

3.文章轉(zhuǎn)載時(shí)請保留本站內(nèi)容來源地址,http://f99ss.com/gl/3060698.html