GreenDao学习以及基本使用(老罗学习总结)
前言
1 GreenDao是一款操作数据库的神器,经过了2.0版本的升级后,已经被广泛的开发者使用。确实是很好用,入门简单,可以剩去了数据库的建表操作和数据库SQL的编写,博主用了一次之后爱不释手,和以前的数据库操作一大堆的代码将它缩成了一句话,舒服.
2,首先要认识一下GreenDao是使用ORM(Object RelationShop Mapping)对象关系映射,就是通过GreenDao将数据库和Bean关联起来有以下优点:
-
存取速度快
-
支持数据库加密
-
轻量级
-
**实体
-
支持缓存
-
代码自动生成
GreenDao相关API:http://greenrobot.org/files/greendao/javadoc/3.1/
关于GreenDao配置
. GreenDao整个运行逻辑是通过其提供的java代码,自动在一个文件夹下生成需要的Bean 、DAO、 DaoMaster
DaoSession.
. 然后在Android代码中通过自动生成的DaoSession来操作数据库、具体方法如下
1.在./src/main目录下创建一个与java同层级的java-gen文件夹(文件夹名字可以自己定义)
2.打开build.gradle,引入sourceSets
sourceSets{
main{
java.srcDirs=['src/main/java','src/main/java-gen']
}
}
添加下了依赖,然后同步
compile 'org.greenrobot:greendao:3.2.2'
compile 'org.greenrobot:greendao-generator:3.2.2'
接下来,就要新建generator工程,新建个module选择java library ,在builder下添加依赖
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'org.greenrobot:greendao-generator:3.2.2'
}
public class DaoMaker {
public static void main(String args[]){
//生成数据库实体类,(版本,包名)
Schema schema =new Schema(1,"com.student.entity");
addStudent(schema);
schema.setDefaultJavaPackageDao("com.student.dao");
try {
new DaoGenerator().generateAll(schema,"E:\\java EE code\\GreenDao_Projects\\app\\src\\main\\java-gen");
} catch (Exception e) {
e.printStackTrace();
}
}
private static void addStudent(Schema schema){
//创建表--》 学生 参数--》name address age
Entity entity =schema.addEntity("student");//创建数据库的表
entity.addIdProperty();//主键 int 类型
entity.addStringProperty("name");
entity.addStringProperty("address");
entity.addIntProperty("age");
}
}
运行上面的java代码,就会自动生成对应的表
接下来就是对数据的增删改查https://github.com/itxiaoshuai/GreenDao_Projects