美文网首页
GreenDao的配置

GreenDao的配置

作者: 考试小灵通 | 来源:发表于2020-11-12 16:19 被阅读0次

    Project下的build。gradle文件

    repositories{

    mavenCentral() // 添加代码仓库  步骤1

    }

    dependencies {

        //greenDao生产代码插件  步骤2

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

    }

    Module下的build.gradle文件加入

    apply plugin: 'org.greenrobot.greendao' // apply plugin 步骤3

    android {

        ...

        //greendao配置  步骤5

        greendao {

            //数据库版本号,升级时修改

            schemaVersion 1

            //生成的DAO,DaoMaster和DaoSession的包路径。默认与表实体所在的包路径相同

            daoPackage '包名.db'

            //生成源文件的路径。默认源文件目录是在build目录中的(build/generated/source/greendao)

            targetGenDir 'src/main/java'

        }

    }   

    dependencies {

        //greenDAO配置  步骤4

        implementation 'org.greenrobot:greendao:3.2.2' // add library

        implementation 'org.greenrobot:greendao-generator:3.2.2'

    }

    BeanApp  配置

    private static BaseApp sInstance;

        private DaoMaster.DevOpenHelper mHelper;

        private DaoMaster mDaoMaster;

        private DaoSession mDaoSession;

        @Override

        public void onCreate() {

            super.onCreate();

            Log.d("BaseApp", "onCreate: ");

            sInstance = this;

            setDatabase();

        }

        /**

        * 设置greenDao

        */

        private void setDatabase() {

            //通过DaoMaster内部类DevOpenHelper可以获取一个SQLiteOpenHelper 对象

            // 可能你已经注意到了,你并不需要去编写「CREATE TABLE」这样的 SQL 语句,因为 greenDAO 已经帮你做了。

            // 注意:默认的 DaoMaster.DevOpenHelper 会在数据库升级时,删除所有的表,意味着这将导致数据的丢失。

            // 所以,在正式的项目中,你还应该做一层封装,来实现数据库的安全升级。

            // 此处MyDb表示数据库名称 可以任意填写,但是必须以db结尾

            mHelper = new DaoMaster.DevOpenHelper(this, "MyDb.db", null);

            SQLiteDatabase db = mHelper.getWritableDatabase();

            //Android 9 默认使用了wal模式,需要关闭wal模式

            db.disableWriteAheadLogging();

            mDaoMaster = new DaoMaster(db);

            mDaoSession = mDaoMaster.newSession();

        }

        public static BaseApp getInstance(){

            return sInstance;

        }

        public DaoSession getDaoSession(){

            return mDaoSession;

        }

    //清单文件注册name

    相关文章

      网友评论

          本文标题:GreenDao的配置

          本文链接:https://www.haomeiwen.com/subject/qrfwmktx.html