LitePal的CRUD操作

前面说到LitePalBase是LitePal所有组件的基类,因此这边很重要的DataHandler就是继承与它,不过依然是抽象类。所有CRUD操作的组件都继承于DataHandler。快来让我们看一下它做了哪些事。1、mDatabase -> SQLiteDatabase 数据库2、query(...) -> List查询一个给定的model的表,返回数据。让我们看下入参
摘要由CSDN通过智能技术生成
前面说到LitePalBase是LitePal所有组件的基类,因此这边很重要的DataHandler就是继承与它,不过依然是抽象类。所有CRUD操作的组件都继承于DataHandler。快来让我们看一下它做了哪些事。

1、mDatabase -> SQLiteDatabase 数据库
2、query(...) -> List<T>
查询一个给定的model的表,返回数据。让我们看下入参
Class<T> modelClass,比如我要查询Song表的数据,传入Song.class;
String[] columns,要查询的列名,比如{name, size},如果传入是null,则返回所有的列;
String selection,条件过滤,例如"name=? and size>0"
String[] selectionArgs,条件过滤中?的参数
String groupBy,分组过滤
String having
String orderBy,排序
String limit,数据项个数限制
List<AssociationsInfo> foreignKeyAssociations,外键关联

3、mathQuery
用来处理聚合操作,比如count、sum、average、max、min等。

4、putFieldsValue
遍历入参的所有属性,并且把属性对应的值存到表中。通过Java的映射机制去调用属性的get方法取到属性对应的值。

一、DeleteHandler
继承于DataHandler。这个类的使用基于DataSupport,主要用来处理数据库中删除的操作。

1、 int onDelete(DataSupport baseObj)
这是一个提供给其他类用来执行删除操作的开发接口。这里baseObj必须被保存,否则删除不生效。baseObj决定了要删除哪条记录。当记录被删除,所有引用的数据例如外键值也会被移除。下面列出几个不同条件下的删除操作:
int onDelete(Class<?> modelClass, long id),删除指定表,指定数据;
int onDeleteAll(String tableName, String... conditions),删除指定表某个条件下的数据;
int onDeleteAll(Class<?> modelClass, String... conditions) ,删除指定表某个条件下的数据;

2、 private int
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值