greenDAO的使用详解—(1)greenDAO的配置和增删改查

1.关于greenDao

greenDao是一个将对象映射到SQLite数据库中的轻量且快速的ORM解决方案。关于greenDAO的概念可以看官网greenDAO

2.项目工具说明

  • 开发工具:Android Studio3.0
  • greenDAO版本:3.2.2
  • 数据库查看工具:SQLiteStudio v2.15

3.Android Studio配置greenDAO

  1. 在项目根目录的build.gradle文件中配置以下信息
  2. 在项目工程()根目录build.gradle文件配置以下信息
  3. 配置build后生成的相关java文件的位置(可以不配置)
schemaVersion : 指定数据库schema版本号,迁移等操作会用到
daoPackage :通过gradle插件生成的数据库相关文件的包名,默认为你的entity所在的包名
targetGenDir :这就是我们上面说到的自定义生成数据库文件的目录了,可以将生成的文件放到我们的java目录中,而不是build中,这样就不用额外的设置资源目录了
说明:如果没有配置以上选项,生成文件的目录在工程的\app\build\generated\source\greendao位置处

android greendao 使用sql_代码段

4.greenDAO的使用

  1. 编写GreenDaoManager文件
  2. 在Application中初始化GreenDAO
  3. 编写java bean和使用的常用注解说明
  4. android greendao 使用sql_greenDAO_02

@Entity: 实体注解
@NotNull:设置表中当前列的值不可为空
@Convert:指定自定义类型
@Generated:GreenDao运行所产生的构造函数或者方法,被此标注的代码可以变更或者下次运行时清除
@Id:主键 Long型,可以通过@Id(autoincrement = true)设置自增长。通过这个注解标记的字段必须是Long,数据库中表示它就是主键,并且默认是自增的
@Property:设置一个非默认关系映射所对应的列名,默认是的使用字段名 举例:@Property (nameInDb=”name”)
@Index:使用@Index作为一个属性来创建一个索引
@ToOne:定义与另一个实体(一个实体对象)的关系
@Transient:添加次标记之后不会生成数据库表的列
@JoinEntity:定义表连接关系
@Unique:向数据库列添加了一个唯一的约束
@JoinProperty:定义名称和引用名称属性关系
@Keep:注解的代码段在GreenDao下次运行时保持不变 1.注解实体类:默认禁止修改此类 2.注解其他代码段,默认禁止修改注解的代码段
@OrderBy:指定排序
@ToMany:定义与多个实体对象的关系

  1. 使用GreenDao向数据库插入数据
  2. android greendao 使用sql_代码段_03

  3. 使用GreenDao查询数据库
  4. 使用GreenDao删除数据库
  5. 使用GreenDao修改数据库
  6. 使用GreenDao执行Sql语句

5.代码下载地址

源码下载,请点击这里