greenDAO 3使用注释来定义模式和实体。相比之下,以前的greenDAO版本要求开发人员拥有一个单独的生成器Java项目。
关注github官网:https://github.com/greenrobot/greenDAO,可以随时查到最新依赖配置。
虽然您仍然可以执行此操作,但greenDAO 3允许您注释实体类以动态定义架构。这是一个简单的例子
@Entity
public class User {
@Id
private Long id;
private String name;
@Transient
private int tempUsageCount; // not persisted
// getters and setters for id and user ...
}
@Entity
注释将Java类User转换为数据库支持的实体。这也将指示greenDAO生成必要的代码(例如DAO)。
Step 1:
在Project的build.gradle中添加插件
buildscript {
repositories {
google()
jcenter()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.4.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
classpath 'org.greenrobot:greendao-gradle-plugin:3.2.2'
}
}
allprojects {
repositories {
google()
jcenter()
mavenCentral()
}
}
如图划横线的必须添加:
图片.png
Step 2:
在Module中添加GreenDao3.x依赖
implementation 'org.greenrobot:greendao:3.2.2' //greendao依赖
Step 3:
在Module中申请插件
//使用greendao
apply plugin: 'org.greenrobot.greendao'
Step 4:
在Module中调整greendao基本配置
//greendao配置
greendao {
//版本号,升级时可配置
schemaVersion 1
daoPackage 'com.xxx.ooo.greendaodemo.greendao'
targetGenDir 'src/main/java'
}
schemaVersion:
版本号,可用于数据库升级
daoPackage:
自动生成实体的路径
targetGenDir:
自动生成实体的路径
daoPackage
和targetGenDir
的配置组合成一个完整的路径,最终的路径为当前Module下:
src/main/java/com.xxx.ooo.greendaodemo.greendao
Step 5:
创建实体类
实体类代码如下:
@Entity
public class Student {
@Id
private String mId;
private String mName;
private int mGender;
@Generated(hash = 442482468)
public Student(String mId, String mName, int mGender) {
this.mId = mId;
this.mName = mName;
this.mGender = mGender;
}
@Generated(hash = 1556870573)
public Student() {
}
public String getMId() {
return this.mId;
}
public void setMId(String mId) {
this.mId = mId;
}
public String getMName() {
return this.mName;
}
public void setMName(String mName) {
this.mName = mName;
}
public int getMGender() {
return this.mGender;
}
public void setMGender(int mGender) {
this.mGender = mGender;
}
}
做完以上5个步骤之后,重新编译,会自动生成3个类,分别是:
图片.png
[本章完...]