У меня есть приложение, которое хранит много данных для автономной работы. У меня есть три класса, в иерархии вроде:
public class MainGroup
{
private UUID Oid;
private String name;
private Date CreatedOn;
}
-
public class Group
{
private UUID Oid;
private String name;
private Date CreatedOn;
private MainGruop MainGroup;
}
-
public class Product
{
private UUID Oid;
private String name;
private Date CreatedOn;
private MainGruop MainGroup;
private Group Group;
}
(поля Oid выбираются как PrimaryKey с атрибутом области. )
Допустим, все объекты MainGroup были сохранены в Realm DB. Затем, когда я пытаюсь вставить объекты Group, с вложенным объектом MainGroup, но только с его полем Oid, чтобы связать его мастер, Realm обновляет запись MainProduct (с данным Oid) и очищает другие поля как пустые.
Таким же образом, когда я вставляю объекты Product и вложенные объекты включают только Oid, область обновляет все поля с нулями.
Итак, существуют более сложные и глубоко связанные объекты, и когда я делаю запрос на получение JSON с сервера, я должен выдать очень большой JSON ответ для хранения данных.
И упомянуть, чтобы вставить метод; Я создаю java объекты с JSON ответом через GSON, и я использую метод Realm.copyToRealmOrUpdate(obj);
для вставки.
Чтобы уменьшить полезную нагрузку (JSON размер, сериализация и процесс вставки), мне нужно чтобы найти способ исправить эту проблему.