1、这东西好在哪儿?
好在使用简单,速度快。原生的操作数据库要各种语句,不好记,尤其是写SQL语句。而这个工具全部是面向对象的,对象就是表,对象的属性就是字段,一个对象就是表中的一条记录。用操作对象的类对对象进行增删改查就等于是直接对数据库进行增删改查。十分方便。就冲这点,这就是个值得研究的好东西。
2、如何配置?
最新的3.2版本相比之前的2.x版本方便了很多,之前的版本也没有用过,好像需要另外建工程进行一系列操作,所以在百度相应资料的时候记得标注上版本,不然看了2.x版本的介绍就麻烦多了。3.2版本只在mavenCentral仓库才有,所以要把原来的jcenter仓库改为mavenCentral仓库,我看网上的资料没有改,不知道他们是怎么下载下来的,反正我下载的时候是提示这个,改了之后就好了。在项目的build.gradle文件中添加对org.greenrobot:greendao-gradle-plugin:3.2.1这个插件的依赖,并在项目的build.gradle文件中应用这个插件。
下面是项目的配置文件
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:24.0.0'
compile 'org.greenrobot:greendao:3.0.1'
}
//
添加greendao节点
greendao{
schemaVersion 1
targetGenDir 'src/main/java'
daoPackage 'com.greendao3.dao'
}
greendao节点里有以下几种元素
schemaVersion:当前数据库的版本号,如果改变了数据库表的结构,或者添加表,删除表等等,需要改schemaVersion
的值,默认值是1。
至此,build项目进行构建,greendao就成功的依赖到项目里了,后面就是应用了,应用就是先在自定义的application里面初始化数据库,然后建立实体类,对实体类进行操作。具体操作可以参考这篇文章,还是挺容易的。http://www.jianshu.com/p/00d93c2d511f,下面是对应实体dao的一些常用的API
-
增加单个数据
-
getShopDao().insert(shop);
-
getShopDao().insertOrReplace(shop);
-
-
增加多个数据
-
getShopDao().insertInTx(shopList);
-
getShopDao().insertOrReplaceInTx(shopList);
-
-
查询全部
-
List< Shop> list = getShopDao().loadAll();
-
List< Shop> list = getShopDao().queryBuilder().list();
-
-
查询附加单个条件
-
.where()
-
.whereOr()
-
-
查询附加多个条件
-
.where(, , ,)
-
.whereOr(, , ,)
-
-
查询附加排序
-
.orderDesc()
-
.orderAsc()
-
-
查询限制当页个数
-
.limit()
-
-
查询总个数
-
.count()
-
-
修改单个数据
-
getShopDao().update(shop);
-
-
修改多个数据
-
getShopDao().updateInTx(shopList);
-
-
删除单个数据
-
getTABUserDao().delete(user);
-
-
删除多个数据
-
getUserDao().deleteInTx(userList);
-
-
删除数据ByKey
-
getTABUserDao().deleteByKey();
-