GreenDao的配置
//在你的根build.gradle文件中:
buildscript {
repositories {
jcenter()
mavenCentral() // add repository
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.3'
classpath 'org.greenrobot:greendao-gradle-plugin:3.2.2'' // add plugin
}
}
//在你的应用程序项目的build.gradle文件:
apply plugin: 'com.android.application'
apply plugin: 'org.greenrobot.greendao' // apply plugin
dependencies {
compile 'org.greenrobot:greendao:3.2.2' // add library
}
开始使用greenDAO Gradle插件而无需任何其他配置。尽管如此,您应该考虑至少设置架构版本:
// In the build.gradle file of your app project:
android {
...
}
greendao {
//数据库的schema版本,也可以理解为数据库版本号
schemaVersion 1
//设置DaoMaster、DaoSession、Dao包名,也就是要放置这些类的包的全路径。
daoPackage 'com.koimy.greedaotest.dao'
//设置DaoMaster、DaoSession、Dao目录
targetGenDir 'src/main/java'
}
GreenDao的实现步骤:
@Entity注解标记了一个Java类作为greenDAO一个presistable实体。
实现实体类之后创建id和其他属性
之后就进行编译
@Entity
public class User {
@Id(autoincrement = true)
private Long id;
@Property(nameInDb = "USERNAME")
private String name;
@NotNull//不能为空
private int repos;
@Transient
private int tempUsageCount;
...
}
@Id注释选择 长 / 长属性作为实体ID。在数据库方面,它是主键。参数autoincrement 是一个标志,使ID值不断增加(不重用旧值)。
@Property允许你定义一个非默认的列名,属性被映射到。如果缺席,greenDAO将以SQL-ish方式(大写,下划线而不是骆驼大小写,例如customName将变为 CUSTOM_NAME)使用字段名称 。注意:您目前只能使用内联常量来指定列名称。
@NotNull使该属性成为数据库端的“NOT NULL”列。通常使用@NotNull标记基本类型(long,int,short,byte)是有意义的,同时具有包装类(Long,Integer,Short,Byte)的可为空的值。
@Transient 标记从持久性中排除的属性。将这些用于临时状态等。或者,也可以使用Java中的transient关键字。
编译:
之后就会自动生成三个Dao类:(在这里只是简单的举例,不要模仿)
然后就可以对数据库进行”增删改查”的操作了(后续再更新)