Java 如何从Firebase检索所有数据
我在Firebase中存储了多条记录,如下所示:Java 如何从Firebase检索所有数据,java,android,firebase,firebase-realtime-database,Java,Android,Firebase,Firebase Realtime Database,我在Firebase中存储了多条记录,如下所示: -KyEpOpqClj_sE2ktP1 -Diameter: "200" -Height: "3" -Literage: "12580.73" -Metal: "Stainless Steel" 我想检索数据并在ListView中这样显示它 -Diameter: 200 -Height: 3 -Literage: 12580.73 -Metal: Stainless Steel Firebase数据库: 如果根
-KyEpOpqClj_sE2ktP1
-Diameter: "200"
-Height: "3"
-Literage: "12580.73"
-Metal: "Stainless Steel"
我想检索数据并在ListView中这样显示它
-Diameter: 200
-Height: 3
-Literage: 12580.73
-Metal: Stainless Steel
Firebase数据库:
如果根目录下有多个子目录,请执行以下操作:
DatabaseReference ref=FirebaseDatabase.getInstance().getReference();
ref.addValueEventListener(new ValueEventListener(){
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot data : dataSnapshot.getChildren()){
String value=data.child("Metal").getValue().toString();
//retrieve here
}
我建议为所有这些参数建立数据模型,如
DataModelClass - Diameter,Height,Literage,Metal
请以与数据模型相同的方式对其进行解析
DatabaseReference ref=FirebaseDatabase.getInstance().getReference().child("KyEpOpqClj_sE2ktP1");
ref.addValueEventListener(new ValueEventListener(){
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
DataModelClass dataM = (DataModelClass) dataSnapShot;
}
@Override
public void onCancelled(FirebaseError firebaseError) {
}
});
您是否尝试过任何代码?这可以工作,但它只显示该子级的数据。我应该如何为多个子项执行此操作?而不是
child(“KyEpOpqClj_sE2ktP1”)
向上一层@Scottydoozan,它会给我NullPointerException,并且所有字符串都是空的null@ScottyDooZA您必须根据您的数据库进行查询。。。我回答了你问的问题。。我没有你的数据库对不起,我要添加我的Firebase数据库的图片
DatabaseReference ref=FirebaseDatabase.getInstance().getReference().child("KyEpOpqClj_sE2ktP1");
ref.addValueEventListener(new ValueEventListener(){
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
DataModelClass dataM = (DataModelClass) dataSnapShot;
}
@Override
public void onCancelled(FirebaseError firebaseError) {
}
});