Я пытаюсь структурировать свои базы данных, и мне было интересно, можно ли десериализовать объект из Firebase RealDatabase со следующей структурой.
public class Profile{
private String userID;
private TenantProfile tenant;
}
public class TenantProfile{
private String name;
private Room room;
}
public class Room{
private String town;
private int size;
}
Можно ли десериализовать весь объектный профиль из Firebase из одного запроса?
Я просто хочу убедиться, что это возможно, перед рефакторингом моего кода и изменением ссылок на базу данных.
Заранее спасибо.
База данных Firebase сериализует/десериализует любые открытые поля и открытые свойства, которые соответствуют соглашениям именования JavaBean для методов получения и установки. Так как классы, которые вы показываете, не содержат ни одного из них, они не будут читать или записывать какие-либо данные.
Если вы пометите поля как public
или добавите общедоступные методы получения/установки, то написание экземпляра класса Profile
сгенерирует этот JSON:
"userID": {
"tenant": {
"name": "the name",
"room": {
"town": "the town",
"size": 42
}
}
}
И это также формат, который вы должны иметь в базе данных, чтобы прочитать значение обратно.