当前位置: 首页 > 知识库问答 >
问题:

Firebase admin java SDK-在事件发生时获取更改数据而不是所有数据

郑安晏
2023-03-14
-DB  
  -chat  
     -branches  
      - 1  
      - 2  
        - users  
        - message
         -1  
          - content : "hi",  
          - messageType : "text"  
         -2
          - content : "hello",
          - messageType : "text"
      - 3
ref.child("chat").child("branches").addValueEventListener()

对于分支子项,它只给出2,而消息子项则给出所有消息。如何只获取已更改的邮件子详细信息。

我试图像这样查询chat.branchid.$branchid.message.$messageid

共有1个答案

卓雅达
2023-03-14
ref.child("chat").child("branches").addChildEventListener(new ChildEventListener() {
  public void onChildAdded(DataSnapshot snapshot, String previousChildKey) {
    System.out.println(snapshot.getKey()+" was added after "+previousChildKey);
  }
  public void onChildChanged(DataSnapshot snapshot) {
    System.out.println(snapshot.getKey()+" was changed");
  }
  ...
 类似资料:
  • 我正在尝试制作聊天应用程序,但我有一个问题,获取实时更改,我尝试使用文档并成功地进行了分页,但当我调用addSnapshotListener时,我再次获得了所有文档,不仅是更改,而且当我尝试检查我获得的数据是否被收获时,应用程序崩溃了!我也试图使它在列表的开始,所以任何一个可以帮助我什么是错误的代码!! 从FireStore获取所有列表: 以下是我从ChangeListener获得的信息:

  • 问题内容: 我的TranslationDetail组件在打开时会传递一个ID,并基于此ID在类构造函数中触发外部api调用,以接收到该状态的数据,并将此数据显示在TranslationDetail上。 如果我手动输入网址,则一切正常。万一我想使用react- router例如显示url下面的下一项时,它确实发生了变化,但是api调用未触发,并且数据将保持不变。 请记住,我是一个初学者。发生这种情况

  • UserViewModel: 用户存储库:

  • 我依赖eclipse插件中的选择服务来响应TableViewer中的选择更改。 这很好,但有时我会更改表中的数据(而选择不会更改)。不幸的是,更改表中的数据不会触发此事件。执行此操作后,我尝试手动将选择设置为第一项: 这不会导致选择更改事件,即使选择确实更改。

  • 问题内容: 我对数据库及其在CRUD操作之外提供的功能不是很熟悉。 我的研究使我 引人注目 。基本上,触发器似乎提供了这种类型的功能: (来自维基百科) 通常,有三个触发事件导致触发器“触发”: INSERT事件(将新记录插入数据库中)。 UPDATE事件(因为记录正在更改)。 DELETE事件(因为一条记录正在被删除)。 我的问题是:当使用某种触发语义对记录进行更新/删除/插入时,数据库是否可以

  • 问题内容: 我有一个针对ui-select2下拉菜单的手表设置(来自ui-bootstrap)。手表会在加载时触发,但不会在数据更改时触发,我不知道为什么。 不应用模型更改或不使用第三个参数进行相等性比较(至少来自我的代码)不是一个常见的问题。 我需要怎么做才能使其点火? 这是一个说明问题的小问题。 问题答案: 我修好了一些东西。 http://plnkr.co/edit/5Zaln7QT2gET