Android studio 中 GreenDao数据库的创建

第一步

在最大的build.gradle中加入这句话

classpath 'org.greenrobot:greendao-gradle-plugin:3.3.0' //2.  add plugin

第二步

在所写的app中加入

id 'org.greenrobot.greendao' // 1.apply plugin

第三步

在所写greenDao的项目添加

greendao {
    // 指定数据库schema版本号,迁移等操作会用到
    schemaVersion 1
    // 设置生成数据库文件的目录,默认是在build中,可以将生成的文件放到我们的java目录中
    targetGenDir 'src/main/java'
    // 设置生成的数据库相关文件的包名,默认为entity所在的包名
    daoPackage 'com.example.db'
}

第五步

加入依赖

api 'org.greenrobot:greendao:3.3.0' // 2.add library

第六步

创建一个类加入字段,例如:

@Entity
public class FoodTable {

    @Id
    private Long id;

    @NotNull
    private String img;
}

第七步

点小锤子锤一下然后会生成四个类例如:

package com.example.three_week_exam.db;

import org.greenrobot.greendao.annotation.Entity;
import org.greenrobot.greendao.annotation.Id;
import org.greenrobot.greendao.annotation.NotNull;
import org.greenrobot.greendao.annotation.Generated;

@Entity
public class FoodTable {

    @Id
    private Long id;

    @NotNull
    private String img;

    @Generated(hash = 1479999356)
    public FoodTable(Long id, @NotNull String img, boolean isChecked) {
        this.id = id;
        this.img = img;
        this.isChecked = isChecked;
    }

    @Generated(hash = 466144808)
    public FoodTable() {
    }
    private boolean isChecked = false;

    public boolean isChecked() {
        return isChecked;
    }

    public void setChecked(boolean checked) {
        isChecked = checked;
    }

    public Long getId() {
        return this.id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getImg() {
        return this.img;
    }

    public void setImg(String img) {
        this.img = img;
    }

    public boolean getIsChecked() {
        return this.isChecked;
    }

    public void setIsChecked(boolean isChecked) {
        this.isChecked = isChecked;
    }

}

第八步

写出它的Manger管理类,详情如下:

package com.example.three_week_exam.db;

import android.content.Context;

public class DBManger {

    private static DBManger manger;
    public static DBManger getInstance() {
        if (manger==null){
            manger = new DBManger();
        }
        return manger;
    }

    private DaoMaster daoMaster;
    private DaoSession daoSession;

    public DaoMaster getDaoMaster(Context context) {
        if (daoMaster==null){
            //后面的参数第一个代表下标,第二个代表所创数据库的名字
            DaoMaster.DevOpenHelper devOpenHelper = new DaoMaster.DevOpenHelper(context, "product.db");
            //加入读写权限
            daoMaster = new DaoMaster(devOpenHelper.getWritableDb());
        }
        return daoMaster;
    }

    public DaoSession getDaoSession() {
        if (daoSession==null){
            daoSession = daoMaster.newSession();
        }
        return daoSession;
    }
}

第九步

在这里我们要把之前写的管理类实例化出来

//初始化数据库
      DaoMaster daoMaster = DBManger.getInstance().getDaoMaster(EnumActivity.this);

小结:

往后就可以正常的进行增删改查了!!!!!!!!!!!!

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值