简体   繁体   English

如何在 firebase 数据库中检索特定孩子的数据

[英]How to retrieve data of a particuler child in firebase database

在此处输入图像描述

I tried this but I get a null pointer exception.我试过这个,但我得到一个 null 指针异常。

The username is used as the name of the child用户名用作孩子的名字

private void getdataofuser() {
    String  Username = ParseUser.getCurrentUser().getUsername().toString();
    Query query = myreff.child("UserprofileNameAndregnumber").child(Username);
    query.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot snapshot) {
            STUDENT_MODEL student_model = new STUDENT_MODEL();
            student_model.setPROFILE_NAME(snapshot.child("profile_NAME").getValue().toString());
            student_model.setREGNUMBER(snapshot.child("regnumber").getValue().toString());

            profilename.setText(student_model.getPROFILE_NAME().toString());
            REgnumber.setText(student_model.getREGNUMBER().toString());
        }

        @Override
        public void onCancelled(@NonNull DatabaseError error) {

            recreate();
        }
    });

}

enter image description here在此处输入图像描述

Try this code below.试试下面的代码。 It will retrieve the data for a particular child它将检索特定孩子的数据

String  Username = ParseUser.getCurrentUser().getUsername().toString();
Query nameQuery = myreff.orderByChild("UserprofileNameAndregnumber").equalTo(Username);


nameQuery.addListenerForSingleValueEvent(new ValueEventListener() {
    @Override
    public void onDataChange(@NonNull DataSnapshot snapshot) {
        if (snapshot.exists()) {
            for (DataSnapshot nameSnapshot: snapshot.getChildren()) {
                String getProfileName = nameSnapshot.child("profile_NAME").getValue(String.class);
                String getRegNumber = nameSnapshot.child("regnumer").getValue(String.class);
            }
        }
        else {
            Toast.makeText(YourActivity.this, "User Not Found", Toast.LENGTH_SHORT).show();
        }
    }

    @Override
    public void onCancelled(@NonNull DatabaseError error) {
        recreate();
    }
});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM