Java 如何从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)。但由于子

我正在制作一个应用程序,大部分操作都使用Firebase。有一个活动需要Firebase数据库子“城市”中的对象列表(例如人员)。每个对象都存储在Firebase唯一密钥下(如
-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,它非常有用)。我认为过滤数据不是一个好主意。你应该找到哪个代码将字符串放在那里。您好,我感谢您在阅读我的代码时所做的努力。根据您的建议,我添加了数据库结构。请帮帮我。谢谢