Android GreenDao使用

简介: gradle添加依赖```groovy// In your root build.gradle file:buildscript { repositories { jcenter() } dependencies { classpath 'com.
  1. gradle添加依赖
```groovy
// In your root build.gradle file:
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.1'
        classpath 'org.greenrobot:greendao-gradle-plugin:3.1.0' // add plugin
    }
}
 
// In your app projects build.gradle file:
apply plugin: 'com.android.application'
apply plugin: 'org.greenrobot.greendao' // apply plugin
 
dependencies {
    compile 'org.greenrobot:greendao:3.2.2' // add library
}
  1. 配置Module根目录下的build.gradle文件
android {
  ......
  // 数据库的版本及Dao相关设置
  greendao {
    // 数据库schema版本,也可以理解为数据库版本号
    schemaVersion 1000
    //  设置DaoMaster 、DaoSession、Dao包名
    daoPackage  'com.mazaiting.greendaotest.db.dao'
    //  设置DaoMaster 、DaoSession、Dao目录
    targetGenDir 'src/main/java'
    //  设置自动生成单元测试用例
    generateTests
  }
}
  1. 新建实体类
package com.mazaiting.greendaotest.db.entry;
import org.greenrobot.greendao.annotation.Entity;
import org.greenrobot.greendao.annotation.Id;
/**
 * Created by mazaiting on 2017/9/7.
 */
@Entity
public class NewFriend {
  // 设置自增长,不能设置为int
  @Id(autoincrement = true)
  private long id;
  private String name;
  private int age;

}
  1. 重新编译工程(build->Rebuild Project)。
    编译完成后,在com.mazaiting.greendaotest.db.dao下生成如下文件:
img_bebe62a1af74f786b06444b862b83598.png
测试1.png
  1. 使用GreenDao添加数据
  /**
   * 使用GreenDao
   */
  private void userGreenDao() {
    DaoMaster.DevOpenHelper devOpenHelper = new DaoMaster.DevOpenHelper(this, "test.db");
    DaoMaster daoMaster = new DaoMaster(devOpenHelper.getWritableDb());
    DaoSession daoSession = daoMaster.newSession();

    NewFriend newFriend = new NewFriend();
    newFriend.setName("mazaiting");
    newFriend.setAge(22);
    daoSession.insert(newFriend);
  }

运行后,在"/data/data/com.mazaiting.greendaotest/databases/"路径下生成test.db数据库,库中生成相对应的实体表名(NEW_FRIEND),并将数据插入了其中。

img_9e5482cd84f3dd597cfe6a35649dd0a9.png
结果.png
  1. 工具类
package com.mazaiting.greendaotest.db.dao;

import android.content.Context;

/**
 * Created by mazaiting on 2017/9/7.
 */

public class DbManager {

  private static final String DB_NAME = "test.db";

  private static DbManager mDbManager = null;
  private static DaoSession mDaoSession = null;

  private DbManager(Context context){
    DaoMaster.DevOpenHelper devOpenHelper = new DaoMaster.DevOpenHelper(context, DB_NAME);
    DaoMaster daoMaster = new DaoMaster(devOpenHelper.getWritableDb());
    mDaoSession = daoMaster.newSession();
    // 在控制台打印出sql语句和查询的值
    QueryBuilder.LOG_SQL = true;
    QueryBuilder.LOG_VALUES = true;
  }

  public static DbManager getInstance(Context context){
    if (null == mDbManager){
      synchronized (DbManager.class){
        if (null == mDbManager){
          mDbManager = new DbManager(context);
        }
      }
    }
    return mDbManager;
  }

  public NewFriendDao getNewFriendDao(){
    return mDaoSession.getNewFriendDao();
  }
}
目录
相关文章
|
1月前
|
SQL 缓存 安全
Android ORM 框架之 greenDAO
Android ORM 框架之 greenDAO
36 0
|
数据库 Android开发
android 多级下拉菜单实现教程 greendao使用
android 多级下拉菜单实现教程 greendao使用
170 0
android 多级下拉菜单实现教程 greendao使用
|
SQL 数据库 Android开发
Android greenDAO 3.2.2简单使用
Android greenDAO 3.2.2简单使用
238 0
|
存储 缓存 JSON
RxCache 整合 Android 的持久层框架 greenDAO、Room
RxCache 整合 Android 的持久层框架 greenDAO、Room
227 0
RxCache 整合 Android 的持久层框架 greenDAO、Room
|
API 数据库 Android开发
Android GreenDao的基本使用
Android GreenDao的基本使用
407 0
Android  GreenDao的基本使用
|
缓存 Java 数据库
Android之greenDao使用
Android之greenDao使用文章大纲一、greenDao简介二、greenDao实战三、项目源码下载四、参考文章 一、greenDao简介 什么是greenDao  GreenDAO是一个开源的Android ORM(“对象/关系映射”),通过ORM(称为“对象/关系映射”),在我们数据库开发过程中节省了开发时间。
3687 0
|
API 数据库 Android开发
Android--数据库GreenDao使用
版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/chaoyu168/article/details/80228390 一、简介 greenDAO是一个对象关系映射(ORM)的框架,能够提供一个接口通过操作对象的方式去操作关系型数据库,它能够让你操作数据库时更简单、更方便。
1322 0
|
SQL Java 数据库
Android数据库框架——GreenDao轻量级的对象关系映射框架,永久告别sqlite
Android数据库框架——GreenDao轻量级的对象关系映射框架,永久告别sqlite 前不久,我在写了ORMLite这个框架的博文 Android数据库框架——ORMLite轻量级的对象关系映射(ORM)Java包 但是对于我个人来说,我可能更加倾向于用GreenDao,所以今天也为.
1417 0
|
数据库 Android开发 索引
Android GreenDao常用注解
@Entity -- 实体注解 public @interface Entity { /** * 在数据库中表的名称,默认为实体的类名 */ String nameInDb() default ""; ...
1219 0