Java 如何从Firebase数据库中获取自定义对象列表,该数据库在同一个子项下具有多个对象类型?
我正在制作一个应用程序,大部分操作都使用Firebase。有一个活动需要Firebase数据库子“城市”中的对象列表(例如人员)。每个对象都存储在Firebase唯一密钥下(如Java 如何从Firebase数据库中获取自定义对象列表,该数据库在同一个子项下具有多个对象类型?,java,android,firebase,firebase-realtime-database,Java,Android,Firebase,Firebase Realtime Database,我正在制作一个应用程序,大部分操作都使用Firebase。有一个活动需要Firebase数据库子“城市”中的对象列表(例如人员)。每个对象都存储在Firebase唯一密钥下(如-KbhjqBQHjawWD3Eshw)。但在子“city”的末尾有一个字符串值,它不在任何唯一键下。因此,当我调用Firebase ChildEventListener时,我使用语句(在onChildAdded内部)People person=dataSnapsot.getValue(People.class)。但由于子
-KbhjqBQHjawWD3Eshw
)。但在子“city”的末尾有一个字符串值,它不在任何唯一键下。因此,当我调用Firebase ChildEventListener时,我使用语句(在onChildAdded内部)People person=dataSnapsot.getValue(People.class)
。但由于子节点中存在字符串值,应用程序崩溃。当我删除它时,该应用程序会按预期工作。我已经扫描了我的整个代码,但我找不到任何地方,把字符串放在那里
有没有什么方法可以过滤掉我需要的数据,例如,只过滤People对象并排除字符串,这样onchildaded就不会遇到它
或者有没有办法完成这项工作
以下是Firebase数据结构示例:
City
|
|_ -Kewjsbfehsuhe
| |
| |_ Name: "Delhi"
| |_ StateCode: "DL"
| |_ Population: 50000000
|
|_ -KSHHWbdsabfur
|
|_ -KDQshrgefsvre
|
|_ StateCode: "WB"
在这里,我遇到了任意字符串StateCode。People对象由两个字符串Name、StateCode和一个名为Population的int值组成。您是否也尝试将该字符串字段添加到pojo类中?无法理解此处的确切情况。你能提供一个你正在描述的Firebase数据的例子,以及你写入数据库的代码吗?与其描述你的代码和数据结构,不如发布(阅读lijnk,它非常有用)。我认为过滤数据不是一个好主意。你应该找到哪个代码将字符串放在那里。您好,我感谢您在阅读我的代码时所做的努力。根据您的建议,我添加了数据库结构。请帮帮我。谢谢您是否也尝试在pojo类中添加该字符串字段?在理解此处的确切情况时遇到困难。你能提供一个你正在描述的Firebase数据的例子,以及你写入数据库的代码吗?与其描述你的代码和数据结构,不如发布(阅读lijnk,它非常有用)。我认为过滤数据不是一个好主意。你应该找到哪个代码将字符串放在那里。您好,我感谢您在阅读我的代码时所做的努力。根据您的建议,我添加了数据库结构。请帮帮我。谢谢