美文网首页
GreenDao简单使用

GreenDao简单使用

作者: 一只遨游在编程中的小菜鸟 | 来源:发表于2017-09-04 22:12 被阅读0次

讲解使用之前先说说GreenDao
GreenDao相较于同类型的库,性能是最好的
GreenDao可以直接将拿到的数据转变成我们想要使用的对象
GreenDao库大小很小,很精简,优化也很好

一:环境配置

1、在project的build.gradle中配置如下代码:

 dependencies {
        ...
        classpath 'org.greenrobot:greendao-gradle-plugin:3.2.1'
    }

2、在module的build.gradle中配置:

apply plugin: 'org.greenrobot.greendao'
android{
        ...
        greendao {
        schemaVersion 1 //数据库版本号
        daoPackage 'com.tt.green.dao' //自动生成的工具类的包名
        targetGenDir 'src/main/java' //生成类的路径
    }
}

dependencies {
      compile 'org.greenrobot:greendao:3.2.0'
}

二:使用:

1、定义实体类

定义实体类之前介绍一些GreenDao中常用的注解的意思

@Entity -- 实体类,类名上打这个标记就代表这个类是GreenDao所能识别的实体类后面可以跟参数,常用的就是“nameInDb”意思就是指定这个类所对应的表名字,如果不写就默认类名作为表名
@Id -- Id 顾名思义 可以通过autoincrement = true来设置其为自增长主键(这里有个坑,如果想要是自增长主键,必须使用Long 不能是 long)
@Property -- 表中的字段 通过nameInDb来指定字段名,否则以变量名命名
@NotNull -- 该数据不能为空
@Generated -- 构造
@Transient -- 添加次标记之后不会生成数据库表的列

接下来定义实体类User

@Entity(nameInDb = "tablename")
public class User {
    @Id(autoincrement = true)
    private Long id;
    @Property(nameInDb = "username")
    private String name;
    @Property(nameInDb = "age")
    private int age;
    @Generated
    public User() {
    }
    @Generated
    public User(Long id, String name, int age) {
        this.id = id;
        this.name = name;
        this.age = age;
    }
}

实体类定义好了,点击Studio的Make Project会帮我们生成GreenDao的相关类

make project.png

生成的文件:

生成文件.png

2、GreenDao初始化

DaoMaster.DevOpenHelper helper = new DaoMaster.DevOpenHelper(this, "stu", null);
        SQLiteDatabase db = helper.getWritableDatabase();
        DaoMaster daoMaster = new DaoMaster(db);
        DaoSession daoSession = daoMaster.newSession();
        mUserDao = daoSession.getUserDao();

初始化好了,之后就使用mUserDao对象来操作数据库,这行代码最好可以在Application中初始化。

3、使用UserDao操作数据库

mUserDao.insert(new User(null,"张三",28))

         //删除单个
        mUserDao.delete(new User(null,"张三",28));
        //根据id删除
        mUserDao.deleteByKey(20L);
        //删除全部
        mUserDao.deleteAll();

mUserDao.update(new User(null,"张三",28));

//查询表中name = "user" 的集合
 List<User> list=mUserDao.queryBuilder().where(UserDao.Properties.Name.eq("user")).build().list();
//查询表中name = "user" 的唯一数据
User user = mUserDao.queryBuilder().where(UserDao.Properties.Name.eq("user")).build().unique();

这篇博客仅仅是介绍一些简单的操作,GreenDao还可以做很多其他的操作,具体的慢慢发现把。

相关文章

  • GreenDao3.0使用

    史上最高效的ORM方案——GreenDao3.0详解 GreenDao3.0简单使用 关于GreenDao gre...

  • GreenDAO 3.0学习

    Android数据库框架GreenDao的简单使用 1. GreenDao介绍: greenDAO是一个对象关系映...

  • GreenDao简单使用和数据库升级

    一 GreenDao的配置 学习/参考地址:GreenDao3.0数据库的简单使用GreenDAO数据库升级 1、...

  • GreenDao简单使用

    讲解使用之前先说说GreenDaoGreenDao相较于同类型的库,性能是最好的GreenDao可以直接将拿到的数...

  • GreenDao简单使用

    新建存放greenDAO的生成目录 在 */src/main目录下新建一个与 java 同层级的java-gen目...

  • greenDAO3.0的使用

    0 . Thanks To 玩转Android之数据库框架greenDAO3.0使用指南GreenDao3.0简单...

  • GreenDao快速入门使用

    GreenDao快速入门使用 greenDao简介 工具和版本 greenDao如何使用 1、把greenDao添...

  • greenDao 的简单使用方法

    # greenDao 关于greendao,相信做android的大部分开发者都使用过了,速度快,体积小,使用简单...

  • GreenDao的简单使用

    GreenDao的简单使用 一、简介 greenDao是一款开源的Android ORM,使得SQLite的二次...

  • GreenDao的简单使用

    1.配置 root的build.gradle 2.配置module的build.gradle 3.继续配置modu...

网友评论

      本文标题:GreenDao简单使用

      本文链接:https://www.haomeiwen.com/subject/lgxyjxtx.html