Android GreenDao的基本使用

简介: Android GreenDao的基本使用

 前言

Android 本地数据库有很多,Sqlite、Dbutils、LitePa、GreenDao等,其他的几个数据库框架都用过了,GreenDao还未在项目中用过,所以在这里记录下GreenDao的基本使用。

一、添加GreenDao支持

1.1 在项目根目录下的build.gradle下的代码添加下列代码:

image.gif

1.2 在module下build.gradle(这里是app下的build.gradle)中添加下列代码:

compile 'org.greenrobot:greendao:3.2.2'

image.gif

并且在最上面添加

apply plugin: 'org.greenrobot.greendao' //新加的

image.gif

1.3 在module下build.gradle android中配置greendao的信息

greendao {
    schemaVersion 1 //数据库版本号
    daoPackage 'hlq.com.greendao.db'// 设置DaoMaster、DaoSession、Dao 包名
    targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录  基本上都是这个
}

image.gif

我的目录如下:

image.gif

二、创建数据库对应的实体类,以用户信息为例

2.1 新建一个User实体类,里面有id,name、pass、sex、age五个字段,如图所示:

image.gif

这是一个普通的实体类,我们通过注解,可以让后续声称对应的表。

@Entity

表明这个实体类会在数据库中生成一个与之相对应的表

@Id

对应数据表中的 Id 字段

其他更多注解可以参考greendao官方网站:http://greenrobot.org/greendao/

添加完注解之后变成如下图所示:

image.gif

如果我们想让id自增(一般id字段都自增),我们可以改为:

ps:这里的坑要注意,如果id自增的话,必须必须定义id类型为大写的Long,小写的会报错。

image.gif

然后,生成对应的setter、getter和构造方法。

2.2 点击 Make Project(或者 Make Moudle ‘App’) 编译工程,会自动在配置的目录下生成daoseesion等。生成如图所示:

image.gif

2.3 初始化 GreenDao,一般都在application中完成初始化操作(这里为了演示直接写在Activity中)

初始化操作主要就是获取dao,代码如下:

DaoMaster.DevOpenHelper devOpenHelper = new DaoMaster.DevOpenHelper(this,"user,db");
SQLiteDatabase sqLiteDatabase = devOpenHelper.getWritableDatabase();
DaoMaster daoMaster = new DaoMaster(sqLiteDatabase);
DaoSession daoSession = daoMaster.newSession();
UserDao userDao = daoSession.getUserDao();

image.gif

三、数据库操作

3.1 插入操作

User user = new User("黄林晴","123456","男",22);
userDao.insert(user);

image.gif

3.2 查询所有操作返回时实体类对应的List集合

userDao.loadAll();

image.gif

为了验证3.1插入操作,我们打印出查询结果如下:

image.gif

image.gif

3.2 接下来我们再插入一条数据,再次打印如下:

image.gif

image.gif

打印出三条因为我们已经运行过一次了。

3.3 条件查询,以按姓名查找为例:

List<User> users = userDao.queryBuilder().where(UserDao.Properties.UserName.eq("Huanglinqing")).build().list();

image.gif

打印结果如下:

image.gif

我们看到只打印出来姓名为Huanglinqing的数据。

3.4 删除

userDao.deleteAll()

image.gif

后续:其他操作就不一一演示了,需要的时候到官方网站去查询API就行了。


目录
相关文章
|
1月前
|
SQL 缓存 安全
Android ORM 框架之 greenDAO
Android ORM 框架之 greenDAO
37 0
|
6天前
|
Java API 数据库
Android greenDao
Android greenDao
12 2
|
设计模式 前端开发 Java
Android体系课之--Kotlin协程入门篇-协程的基本使用
笔者在写这篇文章之前,也白嫖了很多关于Kotlin协程的文章: 这里笔者将他们分为三种: - 1.讲的内容很*浅*,没几句可能就结束了,看完就索然无味了 - 2.讲的内容很*深*,看到一半就开始晕乎乎了,然后可能还是手机好玩。。 - 3.内容比较*适中*,读者可以在里面获取到一些协程的基本信息,关键内容可能就浅尝辄止了,很难获取到核心知识点
|
数据库 Android开发
android 多级下拉菜单实现教程 greendao使用
android 多级下拉菜单实现教程 greendao使用
174 0
android 多级下拉菜单实现教程 greendao使用
|
SQL 数据库 Android开发
Android greenDAO 3.2.2简单使用
Android greenDAO 3.2.2简单使用
240 0
|
存储 缓存 JSON
RxCache 整合 Android 的持久层框架 greenDAO、Room
RxCache 整合 Android 的持久层框架 greenDAO、Room
228 0
RxCache 整合 Android 的持久层框架 greenDAO、Room
|
API 调度 Android开发
【Android 异步操作】Timer 定时器 ( Timer 与 TimerTask 基本使用 | Timer 定时器常用用法 | Timer 源码分析 )
【Android 异步操作】Timer 定时器 ( Timer 与 TimerTask 基本使用 | Timer 定时器常用用法 | Timer 源码分析 )
755 0
|
Android开发
android RatingBar基本使用介绍
android RatingBar基本使用介绍
android RatingBar基本使用介绍
|
XML Android开发 数据格式
Android RatingBar的基本使用和自定义样式
Android RatingBar的基本使用和自定义样式
Android RatingBar的基本使用和自定义样式
|
缓存 Java 数据库
Android之greenDao使用
Android之greenDao使用文章大纲一、greenDao简介二、greenDao实战三、项目源码下载四、参考文章 一、greenDao简介 什么是greenDao  GreenDAO是一个开源的Android ORM(“对象/关系映射”),通过ORM(称为“对象/关系映射”),在我们数据库开发过程中节省了开发时间。
3687 0