GreenDao
2017-01-20 00:00
134 查看
1.先添加依赖
第一步:在app的Build.gradle中添加如下配置:apply plugin: 'org.greenrobot.greendao' buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } greendao{ schemaVersion 1 daoPackage 'com.admom.mygreendaotest.gen' targetGenDir 'src/main/java' } //schemaVersion: 数据库schema版本,也可以理解为数据库版本号 //daoPackage:设置DaoMaster、DaoSession、Dao包名 //targetGenDir:设置DaoMaster、DaoSession、Dao目录 //targetGenDirTest:设置生成单元测试目录 //generateTests:设置自动生成单元测试用例 dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations' }) compile 'com.android.support:appcompat-v7:24.2.1' testCompile 'junit:junit:4.12' compile 'org.greenrobot:greendao:3.2.0' }
在工程的Build.gradle中添加如下配置:
buildscript { repositories { jcenter() mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:2.2.0' classpath 'org.greenrobot:greendao-gradle-plugin:3.2.0' } }
###2. 写一个实体类,点击绿色的锤子按钮,编译生成DaoMaster、DaoSeesion、ShopDao
例如:
@Entity public class shop{ @Id private Long id;//注意id主键必须用Long类型 private String name; }
3.在MyApplication初始化GreenDao
public class MyApplication extends Application { private DaoMaster.DevOpenHelper mHelper; private SQLiteDatabase db; private DaoMaster daoMaster; private DaoSession daoSession; public static MyApplication instances; @Override public void onCreate() { super.onCreate(); instances = this; setDataBase(); } public static MyApplication getInstances(){ return instances; } private void setDataBase() { mHelper = new DaoMaster.DevOpenHelper(this,"notes-db",null); db = mHelper.getWritableDatabase(); daoMaster = new DaoMaster(db); daoSession = daoMaster.newSession(); } public DaoSession getDaoSession(){ return daoSession; } public SQLiteDatabase getDb(){ return db; } }
4.调用数据库的语句
private void searchData() { List<Shop> shops = shopDao.loadAll(); String name = ""; for (Shop s : shops) { name = s.getName() + ";"; } result.setText(name); } private void updataData() { shop = new Shop((long) 22, "aaa"); shopDao.update(shop); } private void deleteData() { shopDao.deleteByKey((long) 1); } private void addData() { shop = new Shop((long) 1, "sss"); shopDao.insert(shop); }
注解
@Entity 实体注解 @NotNull 设置表中的当前列的值不为空 @Convert 制定自定义类型 @Generated GreenDao运行所产生的构造函数或者方法,被此标注的代码可以更新或者下次运行时清除 @Id 主键Long型,可以通过@Id(autoincrement = true)设置自增长,通过这个注解标记的字段必 须是long,数据库中表示它就是主键,并且默认为自增长 @Index 使用@Index作为一个属性累创建一个索引,定义多列索引(@Iink Entity#indexes()) @JoinEntity 定义表连接关系 @JoinProperty 定义名称和引用名称属性关系 @Keep 注解的代码在GreenDao下运行时保持不变 1.注解实体类:默认禁止修改此类 2.注解其他代码,默认禁止修改注解的代码段 @Order 制定排序 @Property 设置一个非默认关系映射所对应的列名,默认使用的字段名。 例:@Property(nameInDb="name") @ToMany 定义多个实体对应的关系 @ToOne 定义与另一个实体(一个实体对象)的关系 @Transient 添加该标记之后不会生成数据库表的列 @Unique 向数据库列添加一个唯一的约束
相关文章推荐
- GreenDao 3.2.0 的基本使用
- 安卓GreenDao框架一些进阶用法整理
- greenDAO系列2--如何开始
- greenDAO系列3--又是介绍
- greenDAO系列6--会话
- greenDAO系列7--关系
- 安卓数据库框架greenDAO(一)
- greenDao简单入门
- greenDao数据库升级
- greenDao的详细介绍
- GreenDao 3.1学习总结
- Android之greenDao的使用
- GreenDao 学习
- Android Studio配置GreenDao3.0
- 【greenDAO3】 项目搭建与增删改查操作
- GreenDao对数据库的常用操作
- Android开发之GreenDao的简单使用
- Android中的GreenDao框架修改数据库的存储路径
- GreenDao3.0升级数据库
- GreenDao 初步使用