java - 如何使用 Android 从 Firebase 迭代检索数据?

标签 java android firebase firebase-realtime-database

实际上我有两个问题:

  1. 如何迭代获取从第一个用户到最后一个用户的所有用户名的名称?

  2. 如何通过一个 ID 从所有兄弟节点检索数据。假设我输入xyz,查询应返回number:99, car1....等)

<小时/>
User1{
  name: xyz
  number: 99...
  car1{ regno: 123
        make: ghj   }
  car2{.....}
 }
User2{..... }

最佳答案

Q1>How do I iteratively get the names of all user names from first to last user?

  DatabaseReference reference = FirebaseDatabase.getInstance().getReference("Users");

reference.addListenerForSingleValueEvent(new ValueEventListener() {
 @Override
public void onDataChange(DataSnapshot dataSnapshot) {
    for(DataSnapshot datas: dataSnapshot.getChildren()){
      String names=datas.child("name").getValue().toString();
     }
  }
 @Override
public void onCancelled(DatabaseError databaseError) {
     }
});

这里您有 Users 处的快照,然后您迭代每个用户并检索名称,假设您有此数据库:

 Users
   user1
     name:xyz
   user2
     name: xziq
<小时/>

Q2>How can I retrieve data from all the sibling nodes from one ID.(Suppose I enter xyz, the query should return number:99, car1....etc)

DatabaseReference ref=FirebaseDatabase.getInstance().getReference().child("Users");
Query queries=ref.orderByChild("name").equalTo("xyz");
queries.addListenerForSingleValueEvent(new ValueEventListener() {...}

要检索兄弟节点,您需要使用类似 orderByChild("name").equalTo("xyz") 的查询,然后附加一个监听器并检索其他节点。

关于java - 如何使用 Android 从 Firebase 迭代检索数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51183954/

相关文章:

java - 动态构建资源包 'key'?

java - 使用 Java SIP 库实现 VoIP

java - 在firebase数据获取方法中创建无限循环

javax.xml.crypto.dsig.XMLSignatureException : the keyselector did not find a validation key

java - 一个异常工作的java循环,

android - 7"tablet & 7"平板电脑模拟器上的 DP 计算问题

java - 如何获取json数组的最大值

Android - 向死线程上的处理程序发送消息,Toast 错误

ios - Swift:如何对数组中结构的子值使用 UISearchResultsUpdating?

Firebase 用户枚举攻击