android - 将非领域对象存储到领域数据库中
问题描述
我有一个第三方库,它创建了很多数据模型来捕获对象中的数据。例如,要存储他们有Record
等级的记录,要存储他们有等级的葡萄糖读数Diabetes
。
现在,由于这些类是库的一部分,因此它们声明如下
public class Record implements Serializable {
}
public class Diabetes extends Record implements Serializable {
}
我想使用这些类并将其存储到领域中。由于领域具有必须从 扩展的约束RealmObject
,我不知道如何存储在库声明的类中捕获的数据。
Diabetes
由于没有扩展,我无法执行以下操作RealmObject
Diabetes diabetes = new Diabetes() ;
realm.executeTransaction((realm) -> {
realm.insert(diabetes);
});
那么无论如何将非领域对象存储到领域数据库中吗?如果我通过扩展在我的应用程序中重新创建相同的类,RealmObject
那么我应该如何快速将非领域对象关闭为领域对象?
解决方案
为Record 创建一个新类,比如RecordEntry 并使其扩展RealmObject。
在 RecordEntry 中创建一个静态函数,该函数接受 Record 类作为参数,然后将其转换为新的 RecordEntry 对象。
例子
static RecordEntry createRecordEntry(Record record) {
return new RecordEntry(record.id, record.title);
}
推荐阅读
- matlab - 在特定条件下删除元胞数组的行范围,MATLAB
- jquery-selectors - 在 puppteer 中链接查询选择器
- vi - 如何为vim语法突出显示对比色
- c++ - 返回对临时对象的引用
- ios - UIScrollView - UILabel 如何将内容推送到屏幕外
- firebase - Dialogflow - Fulfillment Inline Editor(Firebase)超时
- c# - 将 2 个组合框绑定到字典
- c# - 如何在 Blazor 的 onkeypress 方法中读取输入的当前值?
- php - 显示两个日期之间的月数
- sql - 在 Postgresql 中授予动态数据库名称