这是我的数据库:
[x] database -- > [+] students -----> [+] -KuGacomJymBwkcc7zlU (pushKey) -----------> Name - Jon -----------> Age - 21
我有Student.class:
String name; String age; public Student(String Name, String Age) { this.name=Name; this.age=Age; }
我从firebase datasnapshot读取信息,如下所示:
Student newStudent = DataSnapshot.getValue(Student.class);
这样做时,我会得到名称和年龄,但是我的问题是,是否有一种方法可以在不添加任何字符串的情况下在Student类上存储ID(pushKey),而String将保留该字符串并在firebase数据库中使用另一个字段。
谢谢你们。
我更喜欢将键和值分开,否则传递DataSnapshots。但是,如果您愿意,还可以提取键(DataSnapshot.getKey())并将其设置在您的Java类中的以下属性上@Exclude:
DataSnapshot
DataSnapshot.getKey()
@Exclude
public class Student { @Exclude public String key; public String name; public String age; }
然后:
Student newStudent = snapshot.getValue(Student.class); newStudent.key = snapshot.getKey();