作為github上star超8k fork超2k的強大框架,很有必要來用一用嘛~~~~~~
首先奉上GreenDao的github地址https://github.com/greenrobot/greenDAO,接下來是官網地址http://greenrobot.org/greendao/,雖然大家都知道,但是作為記錄,以后方便進入嘛~~
那么開始來跟着官方的腳步開始集成GreenDao吧。
http://greenrobot.org/greendao/documentation/這是文檔地址,進入頁面如圖
我們直接進入introduction中~~~~
上面一些配置,相信做android開發的肯定是不會不知道的,直接拷貝粘貼到項目對應的位置即可,重要的是這句話“Then model your entities and make your project, for example using Build > Make Project in Android Studio”,
大致意思是創建實體類,在Make project,很重要,Make project,會根據你的配置生成一些需要使用的類。那么接下來就看看怎么建實體類吧。
直接點擊文檔首頁Modelling entities,來到如下頁面:
嗯,這里也是要配置的,大致意思如下:
- schemaVersion: 數據庫schema版本,也可以理解為數據庫版本號
- daoPackage:設置DaoMaster 、DaoSession、Dao包名
- targetGenDir:設置DaoMaster 、DaoSession、Dao目錄
- targetGenDirTest:設置生成單元測試目錄
- generateTests:設置自動生成單元測試用例
那么,如官網所說,版本號是你是至少要給配置下的,別偷懶~~~
那么,實體類呢?
如圖所示,屬性大致如下
- @Id :主鍵 Long型,可以通過@Id(autoincrement = true)設置自增長
- @Property:設置一個非默認關系映射所對應的列名,默認是的使用字段名 舉例:@Property (nameInDb="name")
- @NotNul:設置數據庫表當前列不能為空
- @Transient :添加次標記之后不會生成數據庫表的列
上面配置和實體類建立好后,就按照官方所說,Make Project一下,接下來,就能愉快的初始化了~~~
如圖所示,我們在Application中做初始化,供全局使用
public class BaseApp extends Application { private static DaoSession daoSession; @Override public void onCreate() { super.onCreate(); DaoMaster.DevOpenHelper devOpenHelper = new DaoMaster.DevOpenHelper(this, "basemvp.db"); SQLiteDatabase writableDatabase = devOpenHelper.getWritableDatabase(); DaoMaster daoMaster = new DaoMaster(writableDatabase); daoSession = daoMaster.newSession(); } public static DaoSession getDaosession() { return daoSession; } }
當然,我們也可以單獨封裝成一個單例類,方便管理和使用。
接下來簡單的使用,看到網上已經有例子,直接貼上來,哈哈哈
http://www.cnblogs.com/whoislcj/p/5651396.html
以及數據庫的升級和自定義存儲路徑
http://blog.csdn.net/u012532559/article/details/53492464
更多的使用,請前往官網,慢慢閱讀