我正在开发一个连接到Firebase实时数据库的应用程序,我的应用程序包含产品,每个产品都有以下选项:

java - 检索Firebase数据库节点后如何动态创建模型?-LMLPHP

节点数据没有标准。
如何动态地为每个节点建立模型?

最佳答案

如果对于数据包含的内容没有标准,将很难使任何为该数据建模的Java类。好吧...严格来说,您可能可以在运行时使用反射来生成类,但这超出了大多数开发人员希望在单个应用程序中进行的工作。

但是,您仍然有两个有效的选项来处理此数据:


只需在代码中直接使用Firebase中的DataSnapshot。您可以使用getChildren()遍历未知的子节点,如here所示。
DataSnapshot的值提取到Map<String, Object>中,并在其余代码中使用它。然后,您可以使用Map的常规访问器方法访问特定的值。


两者均有效。如果您仍然需要了解子节点在其中的顺序,通常建议使用DataSnapshot。如果顺序不再重要,那么您也可以放心地转换为Map而不会失去保真度。

07-28 03:42
查看更多