greenDao的初步探索

项目中需要存储用户的登录信息,用的是原生的数据库。现在闲下来之后就想研究下GreenDao

在我看来GreenDao是一个很完善而且封装的很好的框架了,用起来很简单。

1 添加依赖

①在project的gradle中加入

//GreenDao3依赖
classpath 'org.greenrobot:greendao-gradle-plugin:3.2.1'

②在app的gradle中加入

 
 
//使用greendao
apply plugin: 'org.greenrobot.greendao'
 
 
//greendao依赖
compile 'org.greenrobot:greendao:3.2.0'

2 bean中加上注释

加上注释之后重新build gradle,会自动生成get set 还有构造方法。 同时也会生成ShopDao类。

扫描二维码关注公众号,回复: 1115365 查看本文章

Bean对象的注释进行解释

  1. @Entity:告诉GreenDao该对象为实体,只有被@Entity注释的Bean类才能被dao类操作

  2. @Id:对象的Id,使用Long类型作为EntityId,否则会报错。(autoincrement = true)表示主键会自增,如果false就会使用旧值

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

  4. @NotNull:属性不能为空

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

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

  7. @Generated:编译后自动生成的构造函数、方法等的注释,提示构造函数、方法等不能被修改

3 在application中初始化数据库,bean中生成表格,数据库需要在application中去初始化。



运行项目后数据库就会生成啦,接下来就是常规的增删改查


GreenDao中Dao对象其他API的介绍

  • 增加单个数据

    • getShopDao().insert(shop);

    • getShopDao().insertOrReplace(shop);

  • 增加多个数据

    • getShopDao().insertInTx(shopList);

    • getShopDao().insertOrReplaceInTx(shopList);

  • 查询全部

    • List< Shop> list = getShopDao().loadAll();

    • List< Shop> list = getShopDao().queryBuilder().list();

  • 查询附加单个条件

    • .where()

    • .whereOr()

  • 查询附加多个条件

    • .where(, , ,)

    • .whereOr(, , ,)

  • 查询附加排序

    • .orderDesc()

    • .orderAsc()

  • 查询限制当页个数

    • .limit()

  • 查询总个数

    • .count()

  • 修改单个数据

    • getShopDao().update(shop);

  • 修改多个数据

    • getShopDao().updateInTx(shopList);

  • 删除单个数据

    • getTABUserDao().delete(user);

  • 删除多个数据

    • getUserDao().deleteInTx(userList);

  • 删除数据ByKey

    • getTABUserDao().deleteByKey();


简单的增删改查就是这样


猜你喜欢

转载自blog.csdn.net/qiyan_123/article/details/80498035