Java Firebase与toObject相对,或创建一个返回对象映射的方法

Java Firebase与toObject相对,或创建一个返回对象映射的方法,java,android,firebase,hashmap,pojo,Java,Android,Firebase,Hashmap,Pojo,我的android应用程序中有一个pojo类,我使用firebase存储它们,我可以使用toObject从firebase检索它们 DatabaseUser user = documentSnapshot.toObject(DatabaseUser.class); 但我想知道是否有一种方法可以将它们保存到firebase,因为目前我必须这样做 Map<String, Object> user = new HashMap<>(); Data

我的android应用程序中有一个pojo类,我使用firebase存储它们,我可以使用toObject从firebase检索它们

DatabaseUser user = documentSnapshot.toObject(DatabaseUser.class);
但我想知道是否有一种方法可以将它们保存到firebase,因为目前我必须这样做

        Map<String, Object> user = new HashMap<>();
        DatabaseUser userObject = params[0];
        user.put(Constants.FS_NAME, userObject.getUser_name());
        user.put(Constants.FS_STATUS, userObject.getUser_status());
        user.put(Constants.FS_NUMBER, userObject.getUser_number());
        user.put(Constants.FS_IMAGE, userObject.getUser_image());
        user.put(Constants.FS_BLOCKED, userObject.getBlocked());
        user.put(Constants.FS_SMALL_IMAGE, userObject.getUser_image());
        user.put(Constants.FS_RECENT_MSG, 
        userObject.getUser_recent_message());
        user.put(Constants.FS_MSG_TIME_STAMP, 
        userObject.getMsg_time_stamp());
        user.put(Constants.FS_TIME_STAMP, userObject.getUser_time_stamp());
        user.put(Constants.FS_ID,userObject.getUser_id());
Map user=newhashmap();
DatabaseUser userObject=params[0];
put(Constants.FS_NAME,userObject.getUser_NAME());
put(Constants.FS_STATUS,userObject.getUser_STATUS());
put(Constants.FS_NUMBER,userObject.getUser_NUMBER());
put(Constants.FS_IMAGE,userObject.getUser_IMAGE());
user.put(Constants.FS_BLOCKED,userObject.getBlocked());
put(Constants.FS_SMALL_IMAGE,userObject.getUser_IMAGE());
user.put(Constants.FS\u RECENT\u MSG,
getUser_recent_message());
user.put(Constants.FS\u MSG\u TIME\u STAMP,
getMsg_time_stamp());
put(Constants.FS_TIME_STAMP,userObject.getUser_TIME_STAMP());
put(Constants.FS_ID,userObject.getUser_ID());
我在文档中找不到任何帮助,而且我不是Java专家,我尝试在我的pojo类中创建一个方法,该方法返回如下映射:

在我的DatabaseUser类中

 public Map toMap(DatabaseUser userObject){
    Map<String, Object> user = new HashMap<>();
    user.put(Constants.FS_NAME, userObject.getUser_name());
    user.put(Constants.FS_STATUS, userObject.getUser_status());
    user.put(Constants.FS_NUMBER, userObject.getUser_number());
    user.put(Constants.FS_IMAGE, userObject.getUser_image());
    user.put(Constants.FS_BLOCKED, userObject.getBlocked());
    user.put(Constants.FS_SMALL_IMAGE, userObject.getUser_image());
    user.put(Constants.FS_RECENT_MSG, userObject.getUser_recent_message());
    user.put(Constants.FS_MSG_TIME_STAMP, userObject.getMsg_time_stamp());
    user.put(Constants.FS_TIME_STAMP, userObject.getUser_time_stamp());
    user.put(Constants.FS_ID,userObject.getUser_id());
    return user;
}
publicmap-toMap(DatabaseUser-userObject){
Map user=newhashmap();
put(Constants.FS_NAME,userObject.getUser_NAME());
put(Constants.FS_STATUS,userObject.getUser_STATUS());
put(Constants.FS_NUMBER,userObject.getUser_NUMBER());
put(Constants.FS_IMAGE,userObject.getUser_IMAGE());
user.put(Constants.FS_BLOCKED,userObject.getBlocked());
put(Constants.FS_SMALL_IMAGE,userObject.getUser_IMAGE());
put(Constants.FS_RECENT_MSG,userObject.getUser_RECENT_message());
put(Constants.FS_MSG_TIME_STAMP,userObject.getMsg_TIME_STAMP());
put(Constants.FS_TIME_STAMP,userObject.getUser_TIME_STAMP());
put(Constants.FS_ID,userObject.getUser_ID());
返回用户;
}

但是它要求我每次都要让一个新的数据库用户来调用toMap,有人能告诉我我做错了什么或建议一个更好的方法吗

你做的很典型。是的,我知道哦,我把返回的地图从一个地图改到另一个地图,关于未经检查的作业的错误消失了。我想现在可以了,非常感谢