java - 如何检索 firebase 实时数据库中的值

标签 java android firebase firebase-realtime-database

我正在努力从 Firebase 检索数据。 enter image description here

例如,我想获取第一条记录并获取用户名和密码。如何获得第一条记录的“ key ”? enter image description here

这是我的代码:

    private String UserName;
    private String Password;
    private int Identity;
    private DatabaseReference reff = FirebaseDatabase.getInstance().getReference();

    public User() {

    }

    public User(String UserName, String Password, int Identity) {
        this.UserName = UserName;
        this.Password = Password;
        this.Identity = Identity;

    }

    public String getUserName() {
        return UserName;
    }

    public void setUserName(String UserName){
        this.UserName = UserName;
    }

    public String getPassword() {
        return Password;
    }

    public void setPassword(String Password) {
        this.Password = Password;
    }

    public int getIdentity() {
        return Identity;
    }

    public void setIdentity(int identity) {
        Identity = identity;
    }

    public void Save(){
        reff.child("Users").push().setValue(this);
    }
}
User newUser = new User(userName, password, identity);
                newUser.Save();

最佳答案

如果您想获取您正在编写的项目的 key ,您可以使用以下命令查看它:

public void Save(){
    DatabaseReference newUserRef = reff.child("Users").push();
    newUserRef.setValue(this);
    System.out.println(newUserRef.getKey());
}

如果您想在阅读用户时找到 key ,可以通过以下方式显示它们:

DatabaseReference usersRef = reff.child("Users");
usersRef.addListenerForSingleValueEvent(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        for (DataSnapshot userSnapshot: dataSnapshot.getChildren()) {
            System.out.println(userSnapshot.getKey());
        }
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {
        throw databaseError.toException();
    }
}

关于java - 如何检索 firebase 实时数据库中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60178193/

相关文章:

java - 底层平台是否会影响任何网站或网络应用程序的速度?

java - 当 setMaximumSize() 和 setPreferedSize() 不起作用时,如何对 JComponent 设置硬限制?

java - LWJGL 3D 碰撞检测?

android - 如何在 Android 中识别哪些短信有送达报告

android - Honeycomb 3.1/Mono for Android 持续存在 'LightsOut'

java - 如何在 Firebase 中获取特定的 PushID?

node.js - Firebase Cloud Functions - 如何获取上传文件的用户?

java - 如果外部 for 循环没有大括号,内部 for 循环是否会被视为单个语句?

java - 努力从 Firebase 实时数据库中获取值

java - 游标 'order by' SQLite