Android GreenDao数据库

在我们进行Android开放时 会用到很多的存储数据的方式 :

    SharePreferences:  本质上是一个xml文档  以键值对方式进行存取  适合用于存储数据量小 请求频繁的功能

    Contert Provider: Android 四大组件之一  内容提供者   可以实现在应用程序之间共享数据.

    File:  本地存储  io流方式 存取

    网络存储:  目前不太清楚   可能跟Glide缓存机制的网络缓存原理相同.....目前不会

    GreenDao:是一个对象关系映射(ORM Object RelationShop Mapping)的框架  提供一个接口通过操作对象的方式去操作关系型数据库


GreenDao 是一款用于操作数据库 创建数据库的框架 它为我们省去了大量写sql 语句的时间 挺高了工作效率

再也不用写哪些喜欢的SQ语句啦

GreenDao的使用

先粘依赖 以防被口马

implementation 'org.greenrobot:greendao:3.2.2'

配置 ↓

Project-gradle 配置

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

应用插件

apply plugin: 'org.greenrobot.greendao'

粘在这个位置

你以为到这就完了    不  还有

  复制到 android {  中 }

        greendao{

                //指定数据库schema版本号,迁移等操作会用到;

                schemaVersion 1

                //dao层的包名,包名默认是实体所在的包;

                daoPackage 'com.greendao.gen'

                //生成数据库文件的目录;

                targetGenDir 'src/main/java'

    }

配置就差不多了


定义一个类 

@Entity:将java普通类标志为一个能够被GreenDao可识别的数据库类型的实体类;

跑一下项目

新生成包中文件的介绍

DaoDao : 数据访问对象(DAO)持续存在并查询实体。  

DaoMaster: GreenDao的顶级对象,作为数据库对象、用于创建表和删除表

DaoSession: 管理所有的Dao对象,Dao对象中存在着增删改查等API   

//App 中初始化         图片在下边

1 创建数据库 创建表

DaoMaster.DevOpenHelper devOpenHelper = new DaoMaster.DevOpenHelper(this, "表名", null);

2 获取可写入数据库

SQLiteDatabase db = devOpenHelper.getWritableDatabase();

3 获取数据库对象

DaoMaster daoMaster = new DaoMaster(db);

4 获取Dao对象管理者

DaoSession daoSession = daoMaster.newSession();


不要忘记注册App


案例

定义了两个按钮  一个存  一个取

使用EventBus初始化控件  不用在意

这就存入了

数据库 表的路径是  模拟器 data -- data --找到的自己的项目 ↓


取出

注意判空

效果图

根据主键进行取出的   所有简单来说 抽象化的以键值对存取

麻雀虽小 但五脏有二     删除和修改以及数据库更新后续在写  因为:

晚安

你可能感兴趣的:(Android GreenDao数据库)