greendao连接mysql_Android数据库GreenDao使用说明

介绍

GreenDao是一个开源的 Android ORM嵌入式关系数据库,通过将 Java 对象映射到数据库表(称为 ORM,“对象/关系映射”) ,使用一个简单的面向对象的 API 来存储、更新、删除和查询 Java 对象。

GreenDao特点

最佳性能 (可能是 Android 中最快的 ORM) ,基准测试也是开源的;

易于使用的功能强大的 api,涵盖关系和连接;

最小的内存消耗;

小型库大小(< 100KB) ,以保持较低的构建时间,并避免65k 方法限制;

数据库加密:greenDAO 支持 SQLCipher 来保证用户数据的安全;

强大而活跃的社区交流支持。

项目配置

项目目录下.gradle文件配置:

buildscript {

repositories {

google()

jcenter()

// GreenDao仓库

mavenCentral()

}

dependencies {

classpath 'com.android.tools.build:gradle:3.5.4'

// GreenDao插件

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

}

}

app目录下.gradle配置

apply plugin: 'com.android.application'

//GreenDao插件

apply plugin: 'org.greenrobot.greendao'

dependencies {

//GreenDao依赖添加

implementation 'org.greenrobot:greendao:3.2.2'

}

greendao {

// 数据库版本号

schemaVersion 1

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

targetGenDir 'src/main/java'

// 生成的数据库相关文件的包名

daoPackage 'com.nianlun.greendao.gen'

}

使用说明

1、 首先新建用户实体类,如下:

@Entity

public class User {

@Id(autoincrement = true)

private Long id;

@Unique

private String userId;

@Property

private String userName;

@Property

private int age;

}

实体类中详细注解说明:

@Entity:表明这个实体类会在数据库中生成一个与之相对应的表,其中可配置项:

nameInDb:可以自定义表名,表明该实体对应数据库中的那张表,默认为实体类名;

indexes:定义索引,这里可跨越多个列;

createInDb:如果是有多个实体都关联这个表,可以把多余的实体里面设置为false避免重复创建(默认是true);

schema:一个项目中有多个schema时,表明要让这个dao属于哪个schema;

active:是否应该生成更新/删除/刷新方法。如果Entity定义了 @ToOne 或 @ToMany关系,那么独立于该值是有效的。意为是否支持实体类之间update,refresh,delete等操作。

@Id:对应数据表中的主键,是一条数据的唯一标识。如果实体没有声明主键,默认创建Long类型主键"_id"自增。使用Long类型主键时可以通过@Id(autoincrement = true)设置为自增。

@Property(nameInDb = "USER_NAME" ):可以自定义字段名࿰

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值