欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

配置和使用绿色大道

最编程 2024-06-24 10:52:53
...

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

一、配置

1.在项目的build.gradle下加

dependencies {
    //greenDao生产代码插件 
    classpath 'org.greenrobot:greendao-gradle-plugin:3.2.2' // add plugin
}

2.在Module下的build.gradle文件添加以下内容

apply plugin: 'org.greenrobot.greendao' // apply plugin 
android {
...
    //greendao配置 
    greendao {
        //数据库版本号,升级时修改
        schemaVersion 1
        //生成的DAO,DaoMaster和DaoSession的包路径。默认与表实体所在的包路径相同
        daoPackage 'com.example.xts.greendaodemo.db'
        //生成源文件的路径。默认源文件目录是在build目录中的(build/generated/source/greendao)
        targetGenDir 'src/main/java'
    }
}

dependencies {
    //greenDAO配置 
    implementation 'org.greenrobot:greendao:3.2.2' // add library
    implementation 'org.greenrobot:greendao-generator:3.2.2'
}

1649985382(1).png

解决方法:

把项目的:

classpath 'org.greenrobot:greendao-gradle-plugin:3.3.0' // add plugin    3.2.2改成3.3.0

把Module的:

implementation 'org.greenrobot:greendao-generator:3.3.0'         // 3.2.2改成3.3.0

之后重新sync,如果以上两步如果没有问题表示配置完成

二、使用

1.创建实体类(实体类的字段写完后,点击Build--->Rebuild Project,就会生成set、get方法)

@Entity
public class Bean {
@Id
private Long id;//必须为Long类型,大写
private String date;
@Unique
private String key;
private int step;
@Transient//表示该字段不会插入数据库
....
}

2.创建一个自己的application,继承Application

public class App extends Application {
    private static DaoSession daoSession;
    @Override
    public void onCreate() {
        super.onCreate();
        DaoMaster.DevOpenHelper devOpenHelper = new DaoMaster.DevOpenHelper(this, "user.db");
        DaoMaster daoMaster = new DaoMaster(devOpenHelper.getWritableDatabase());
        daoSession = daoMaster.newSession();
    }
    
    public static DaoSession getSession(){
        return daoSession;
    }
}

3.创建一个工具类DbUtils

public class DbUtil {
    static {
        daoSession = App.getSession();
    }
    static DaoSession daoSession;
    //插入
    public static void insert(PhoneBean bean){
        if(!queryOne(bean)){
            daoSession.insert(bean);
        }
    }
    //删除
    public static void delete(PhoneBean bean){
        if(queryOne(bean)){
            daoSession.delete(bean);
        }
    }
    //查询单个
    public static boolean queryOne(PhoneBean bean){
        PhoneBean unique = daoSession.queryBuilder(PhoneBean.class)
                .where(PhoneBeanDao.Properties.Phone.eq(bean.getPhone()))
                .unique();
        return unique==null?false:true;
    }
    //查询所有
    public static List<PhoneBean> queryAll(){
        return daoSession.loadAll(PhoneBean.class);
    }
}

4.在清单文件中配置自己的application
android:name=".ui.App"\

5.在需要使用的地方直接调用即可

以上就是GreenDao的配置还有使用啦!