作为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
更多的使用,请前往官网,慢慢阅读