gpt4 book ai didi

android - Firestore 检索嵌套对象并转换为 POJO

转载 作者:行者123 更新时间:2023-11-29 02:22:25 26 4
gpt4 key购买 nike

我在 Firestore 中嵌套了对象,我在其中将文档绑定(bind)到已登录用户的 UUID。

我可以通过转换为 map 并在 DocumentSnapshot 上调用 getData 来获取嵌套值。然后遍历 Map 条目集。我通常使用 Firestore 的方法将结果转换回我的自定义对象(例如 documentSnapshot.toObject(POJO.class) 并将它们放入列表中,但是由于我将嵌套值作为 Map 获取,我是否需要使用Jackson 或 GS​​ON 之类的东西?完成此循环后,我想转换为 POJO 并将每个添加到数组列表中,在本例中为 allVehices。

public ArrayList<Vehicle> getAllVehicles() {
FirebaseFirestore.getInstance().collection("vehicles")
//.whereEqualTo("vehicleUUID",FirebaseAuth.getInstance().getCurrentUser().getUid())
.get()
.addOnCompleteListener(new OnCompleteListener<QuerySnapshot>() {
@Override
public void onComplete(@NonNull Task<QuerySnapshot> task) {
if (task.isSuccessful()) {
for (DocumentSnapshot documentSnapshot : task.getResult()) {
Map<String,Object> map = (Map<String,Object>) documentSnapshot.getData();
for (Map.Entry<String,Object> entry : map.entrySet()) {
System.out.print(entry.getKey() + "/" + entry.getValue());

}
}
}
}
});

return allVehicles;

}

Firestore structure

最佳答案

是的,您必须找到自己的解决方案,因为 Firestore SDK 目前不支持将单个字段映射到 Java 对象。它现在仅适用于文档的全部内容。

欢迎调用file a feature request如果您希望 SDK 提供一种方法来为您执行此映射。

关于android - Firestore 检索嵌套对象并转换为 POJO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54545018/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com