greendao使用

##greendao ##1.greendao是什么 greendaojava

##2.性能 输入图片说明数据库

不只如此,其优势还包括有如下几点
存取速度快
支持数据库加密
轻量级
激活实体
支持缓存
代码自动生成

##3.使用 ###配置 1.在Project工程build.gradle里加入以下配置缓存

classpath 'org.greenrobot:greendao-gradle-plugin:3.1.0'
 
 allprojects {
	repositories {
    jcenter()
	}
}

2.在Module里build.gradle里加入以下配置

apply plugin: 'org.greenrobot.greendao'

compile 'org.greenrobot:greendao:3.1.0'

 greendao {
    schemaVersion 1                             
}

###建立User对象app

@Entity
public class User {
@Id
private Long id;
private String name;
@Transient
private int tempUsageCount; // not persisted
}
@Entity:告诉GreenDao该对象为实体,只有被@Entity注释的Bean类才能被dao类操做

@Id:对象的Id,使用Long类型做为EntityId,不然会报错。(autoincrement = true)表示主键会自增,若是false就会使用旧值

@Property:能够自定义字段名,注意外键不能使用该属性

@NotNull:属性不能为空

@Transient:使用该注释的属性不会被存入数据库的字段中

@Unique:该属性值必须在数据库中是惟一值

###编译项目 1 . 生成DaoMaster.java GreenDao的顶级对象,做为数据库对象、用于建立表和删除表 DevOpenHelper:建立SQLite数据库的SQLiteOpenHelper的具体实现 2 . 生成DaoSession.java 管理全部的Dao对象,Dao对象中存在着增删改查等API 3 . 生成UserDao.java 实体类生成了get和set方法 ###调用方法 User mUser; List<User> mList; 1. 增 增长单个数据 getUserDao().insert(mUser); getUserDao().insertOrReplace(mUser);性能

增长多个数据 
	getUserDao().insertInTx(mList);
	getUserDao().insertOrReplaceInTx(mList);
2. 删
	删除单个数据 
	getUserDao().delete(mUser);
	
	删除多个数据 
	getUserDao().deleteInTx(mList);
	
	删除数据ByKey 
	getTABUserDao().deleteByKey(id);
3. 改
	修改单个数据 
	getUserDao().update(mUser);
	修改多个数据 
	getUserDao().updateInTx(mList);
4. 查
	查询所有 
	getUserDao().loadAll();
	getUserDao().queryBuilder().list();
	
	查询附加单个条件 
	.where()
	.whereOr()
	
	查询附加多个条件 
	.where(, , ,)
	.whereOr(, , ,)
	
	查询附加排序 
	.orderDesc()
	.orderAsc()
	
	查询限制当页个数 
	.limit()
	
	查询总个数 
	.count()
相关文章
相关标签/搜索