Java 如何得到一个孩子';数据何时被推送?
我使用“push()”函数将对象存储到firebase数据库中,由于它使用唯一键存储数据,因此无法使用文档中提到的内容更改存储的对象值:Java 如何得到一个孩子';数据何时被推送?,java,android,firebase,firebase-realtime-database,Java,Android,Firebase,Firebase Realtime Database,我使用“push()”函数将对象存储到firebase数据库中,由于它使用唯一键存储数据,因此无法使用文档中提到的内容更改存储的对象值: myRef.child("child name").setValue(model); 因为我根本不知道钥匙。我想知道是否有其他方法可以修改firebase数据库的数据 我想向用户添加一个名为“conversations”的新孩子,并以编程方式向他添加孩子 这是数据库结构: 如果您有以下数据库: Users pushId
myRef.child("child name").setValue(model);
因为我根本不知道钥匙。我想知道是否有其他方法可以修改firebase数据库的数据
我想向用户添加一个名为“conversations”的新孩子,并以编程方式向他添加孩子
这是数据库结构:
如果您有以下数据库:
Users
pushId
name : john
age : 100
如果您不知道pushId
,可以执行以下操作:
DatabaseReference databaseReference = FirebaseDatabase.getInstance().getReference("Users");
databaseReference.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot ds : dataSnapshot.getChildren()){
String key = ds.getKey();
String name = ds.child("name").getValue().toString();
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
上面将使用
getKey()获取名称
和密钥
请添加您的数据库结构,并指出您想要获取的确切数据。想象一下,如果我想使用某个特定用户名的id获取该用户名,并且我有数百万用户,那么我必须在所有用户中循环才能获取oneno。如果您不使用查询orderByChild(“名称”).equalTo(此处的用户名\u)
databaseReference.orderByChild(“name”).equalTo(此处为用户名)。addListenerForSingleValueEvent(新值EventListener(){…)