greenDao配置
Posted Calo-missile
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了greenDao配置相关的知识,希望对你有一定的参考价值。
直接上图:外部的build.gradle只配置一项:
classpath \'org.greenrobot:greendao-gradle-plugin:3.0.0\'
然后在app内的build.gradle配置三个地方:
1、 apply plugin: \'org.greenrobot.greendao\'
2、greendao {
schemaVersion 1 //数据库版本号
daoPackage \'com.xxx.greendao.gen\' //com.xxx.greendao为包名,gen是该包名下的子目录(用于存放数据库的地方 可以自定义...
targetGenDir \'src/main/java\' //就是main下面的java目录
}
3、compile\'org.greenrobot:greendao:3.0.1\'
compile\'org.greenrobot:greendao-generator:3.0.0\' //就是添加两个依赖
上图:
Rebuild project...后面加了修改 greendao1版本 变为了3.2.0
笔记:
greendao中的注解
(一) @Entity 定义实体
@nameInDb 在数据库中的名字,如不写则为实体中类名
@indexes 索引
@createInDb 是否创建表,默认为true,false时不创建
@schema 指定架构名称为实体
@active 无论是更新生成都刷新
(二) @Id
(三) @NotNull 不为null
(四) @Unique 唯一约束
(五) @ToMany 一对多
(六) @OrderBy 排序
(七) @ToOne 一对一
(八) @Transient 不存储在数据库中
(九) @generated 由greendao产生的构造函数或方法
使用:
@Entity //将我们的java普通类变为一个能够被greenDAO识别的数据库类型的实体类
public class User {
@Id //通过这个注解标记的字段必须是Long类型的,这个字段在数据库中表示它就是主键,并且它默认就是自增的
private Long id;
private String name;
@Transient //表明这个字段不会被写入数据库,只是作为一个普通的java类字段,用来临时存储数据的,不会被持久化
private int tempUsageCount; // not persisted
以上是关于greenDao配置的主要内容,如果未能解决你的问题,请参考以下文章
greendao 3.1.0在android studio中配置