相关疑难解决方法(0)

Android-如何从Firebase中按插入顺序检索对象列表?

我想要什么?

我想从Firebase数据库中按插入顺序检索对象列表。

如何将对象添加到Firebase数据库中的列表?

mRefUser.push()。setValue(new MessageItem());

mRefUser.push()。setValue(new MessageItem());

mRefUser.push()。setValue(new MessageItem());

如何添加?

Firebase将每个对象存储为HashMap中的键值对。

在此处输入图片说明

我如何检索这些值?

mFireBaseRefnew.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            final Map<String, MessageItem> messageMap = new LinkedHashMap<String, MessageItem>();
            if (dataSnapshot != null && dataSnapshot.getValue() != null) {

                for (DataSnapshot postSnapshot : dataSnapshot.getChildren()) {
                    HashMap<String,MessageItem> messageMap = (HashMap<String, MessageItem>) postSnapshot.getValue();
                    Collection<MessageItem> messageItems = messageMap.values() ;
                    List<MessageItem> messageItemList = new ArrayList<MessageItem>();
                    messageItemList.addAll(messageItems);                     
            }
        }

        @Override
        public void onCancelled(FirebaseError firebaseError) {

        }
    });
Run Code Online (Sandbox Code Playgroud)

我得到什么?

在此处输入图片说明

最后说明:-

哈希键是随机的。有什么方法可以获取链接的哈希图而不是哈希图。我不想存储密钥,因为数据库保持顺序,应该有一些方法可以使它们保持相同的顺序,但是我不知道如何获取它们。

android linkedhashmap firebase firebase-realtime-database

3
推荐指数
1
解决办法
5865
查看次数

如何将 firebase 数据 (snake_case) 转换为 Java 对象 (camelCase)

我想将我的 firebase 数据对象映射到我的 pojo。但是,我的 firebase 对象属性名称是蛇形大小写,例如;“用户名”。我想在我的 pojo 上使用 camelCase,例如;“用户名”

我找到了这样一个漂亮的答案,但是,我找不到任何关于snake_case 到camelCase 映射的示例。

我的 pojo;

@SerializedName("content")
private String content;
@SerializedName("user_name")
private String userName;
Run Code Online (Sandbox Code Playgroud)

我正在使用以下代码行进行映射。'content' 匹配没有问题(有或没有 @SerializedName 注释),但 userName 保持为空。

Story story = storySnapshot.getValue(Story.class);

这也是混淆的一个问题。是否有一种优雅的方式将数据与 pojo 匹配?

java android type-conversion firebase firebase-realtime-database

2
推荐指数
1
解决办法
1089
查看次数