GreenDao<第四篇>:GreenDao3的配置

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: 自动生成实体的路径

daoPackagetargetGenDir的配置组合成一个完整的路径,最终的路径为当前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

[本章完...]

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容