热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何从firebase数据中获取特定键值?

如何解决《如何从firebase数据中获取特定键值?》经验,为你挑选了1个好方法。

我假设DIV_1的父级和DIV_10是root.如果你有DIV_ID类似"1"或"10"的值并且需要获得值DIV_NAME,那么你应该这样做:

int divId = 1; // sample
FirebaseDatabase.getInstance().getReference().orderByChild("DIV_ID").equalTo(divId)
    .addValueEventListener(new ValueEventListener() {
        ... onDataChange(DataSnapshot dataSnapshot) {
             for (DataSnapshot snapshot : dataSnapshot.getChildren()) {
                 String divName = snapshot.child("DIV_NAME").getValue(String.class);
                 // there you go
                 // and please check if you have more than 1 value as result
             }
        }
        ...
    }

但是,如果你有一个像键值DIV_1还是DIV_10那么它应该是容易得多.像这样:

String key = "DIV_1";
FirebaseDatabase.getInstance().getReference(key)
    .addValueEventListener(new ValueEventListener() {
        ... onDataChange(DataSnapshot dataSnapshot) {
             String divName = snapshot.child("DIV_NAME").getValue(String.class);
             // note that in this sample, it doesn't need to loop, because:
             // data you get here is one level deeper than data you got on first sample
        }
        ...
    }

希望这可以帮助



1> koceeng..:

我假设DIV_1的父级和DIV_10是root.如果你有DIV_ID类似"1"或"10"的值并且需要获得值DIV_NAME,那么你应该这样做:

int divId = 1; // sample
FirebaseDatabase.getInstance().getReference().orderByChild("DIV_ID").equalTo(divId)
    .addValueEventListener(new ValueEventListener() {
        ... onDataChange(DataSnapshot dataSnapshot) {
             for (DataSnapshot snapshot : dataSnapshot.getChildren()) {
                 String divName = snapshot.child("DIV_NAME").getValue(String.class);
                 // there you go
                 // and please check if you have more than 1 value as result
             }
        }
        ...
    }

但是,如果你有一个像键值DIV_1还是DIV_10那么它应该是容易得多.像这样:

String key = "DIV_1";
FirebaseDatabase.getInstance().getReference(key)
    .addValueEventListener(new ValueEventListener() {
        ... onDataChange(DataSnapshot dataSnapshot) {
             String divName = snapshot.child("DIV_NAME").getValue(String.class);
             // note that in this sample, it doesn't need to loop, because:
             // data you get here is one level deeper than data you got on first sample
        }
        ...
    }

希望这可以帮助


推荐阅读
  • 上图是InnoDB存储引擎的结构。1、缓冲池InnoDB存储引擎是基于磁盘存储的,并将其中的记录按照页的方式进行管理。因此可以看作是基于磁盘的数据库系统。在数据库系统中,由于CPU速度 ... [详细]
  • IhaveaFirebasedatabasethatismodeledassuch:我有一个这样建模的Firebase数据库::users:some-random ... [详细]
  • Conflictwithfirebase11.8.0andgoogle-servicesplugin3.1.2 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • Android JSON基础,音视频开发进阶指南目录
    Array里面的对象数据是有序的,json字符串最外层是方括号的,方括号:[]解析jsonArray代码try{json字符串最外层是 ... [详细]
  • 标题: ... [详细]
  • 本文介绍了Python爬虫技术基础篇面向对象高级编程(中)中的多重继承概念。通过继承,子类可以扩展父类的功能。文章以动物类层次的设计为例,讨论了按照不同分类方式设计类层次的复杂性和多重继承的优势。最后给出了哺乳动物和鸟类的设计示例,以及能跑、能飞、宠物类和非宠物类的增加对类数量的影响。 ... [详细]
  • MongoDB用户验证auth的权限设置及角色说明
    本文介绍了MongoDB用户验证auth的权限设置,包括readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase、cluster相关的权限以及root权限等角色的说明和使用方法。 ... [详细]
  • 本文介绍了在处理不规则数据时如何使用Python自动提取文本中的时间日期,包括使用dateutil.parser模块统一日期字符串格式和使用datefinder模块提取日期。同时,还介绍了一段使用正则表达式的代码,可以支持中文日期和一些特殊的时间识别,例如'2012年12月12日'、'3小时前'、'在2012/12/13哈哈'等。 ... [详细]
  • 本文介绍了在MFC下利用C++和MFC的特性动态创建窗口的方法,包括继承现有的MFC类并加以改造、插入工具栏和状态栏对象的声明等。同时还提到了窗口销毁的处理方法。本文详细介绍了实现方法并给出了相关注意事项。 ... [详细]
  • 本文介绍了RxJava在Android开发中的广泛应用以及其在事件总线(Event Bus)实现中的使用方法。RxJava是一种基于观察者模式的异步java库,可以提高开发效率、降低维护成本。通过RxJava,开发者可以实现事件的异步处理和链式操作。对于已经具备RxJava基础的开发者来说,本文将详细介绍如何利用RxJava实现事件总线,并提供了使用建议。 ... [详细]
  • 十大经典排序算法动图演示+Python实现
    本文介绍了十大经典排序算法的原理、演示和Python实现。排序算法分为内部排序和外部排序,常见的内部排序算法有插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。文章还解释了时间复杂度和稳定性的概念,并提供了相关的名词解释。 ... [详细]
  • 本文分析了Wince程序内存和存储内存的分布及作用。Wince内存包括系统内存、对象存储和程序内存,其中系统内存占用了一部分SDRAM,而剩下的30M为程序内存和存储内存。对象存储是嵌入式wince操作系统中的一个新概念,常用于消费电子设备中。此外,文章还介绍了主电源和后备电池在操作系统中的作用。 ... [详细]
  • Iamtryingtocreateanarrayofstructinstanceslikethis:我试图创建一个这样的struct实例数组:letinstallers: ... [详细]
author-avatar
cc_vb8
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有