Google Room框架简单使用

Google关于数据库,从最初的SQlite, 到后来的GreeDAO,用起来都不错。最近项目中想尝试下Google的Room数据库,还可以跟RxJava结合,先把用法记录如下:
参考文档
https://developer.android.google.cn/jetpack/androidx/releases/room

1. 项目中引入RoomGoogle Room框架简单使用_第1张图片

2. app build.gradle

配置APP中的build.gradle,这样子会有schemas文件夹。里面定义的是每个版本数据库的结构。Google Room框架简单使用_第2张图片Google Room框架简单使用_第3张图片

  1. 定义一个实体类,一定要有getter和setter方法
    注解 @EntityGoogle Room框架简单使用_第4张图片
  2. 定义Dao接口,用于具体的操作
    注解 @Dao
    Google Room框架简单使用_第5张图片3. 定义数据库
    注解 @DataBase
    Google Room框架简单使用_第6张图片
    使用,数据库操必须在子线程中。不然会报错
AppDatabase db = AppDatabase.getInstance(getApplicationContext());
                db.jPushNotificationMessageDAO().getAll()
                        .subscribeOn(Schedulers.newThread())
                        .observeOn(AndroidSchedulers.mainThread())
                        .subscribe(new Consumer>() {
                            @Override
                            public void accept(List users) throws Exception {
                                Log.i(TAG, "accept: " + users.size());
                            }
                        });

你可能感兴趣的:(Android)