ObjectBox
2019-03-29 本文已影响0人
csxiong
本篇为基本流程和问题记录
官网是最好的文档:https://docs.objectbox.io/entity-annotations
1.确认ObjectBox的优势和性能,确定自己的需求是否需要用到DB
ObjectBox 和其他DB性能比较
https://juejin.im/entry/59ca6db55188257a125d85b9
note:我选择OB的原因很简单,Realm在线程切换不太友好(具体Realm为什么有ThreadLocal要去看看官网),且数据可视化 ,API简洁。
2.ObjectBox基本(大致流程)
1. 添加依赖
2.先创建含注解 @Entity 的实体,并添加主键注解 @Id 。
3.build生成MyObjectBox
4.初始化MyObject构建BoxStore
5.获取BoxStore开启查询
3.问题集锦
1.OB表结构有参构造时,需要额外添加一个无参构造
io.objectbox.exception.DbException: Entity is expected to have a no-arg constructor:{your entity}
2.OB和dagger2存在编译问题 需要管理,可注入BoxStore解决
3.主键需要自行管理则开启 @Id(assignable =true),否则主键Id不允许超过表Size
待续...