डेटा के विशिष्ट सूची प्राप्त करने मैं firebase
और nosql
डेटाबेसकैसे से firebase
लिए नया हूँ मैं एक Firebase से कुछ विशिष्ट डेटा पुनः प्राप्त करने की कोशिश कर रहा हूँ। मेरे पास नोड universities
है और उस नोड में नोड के रूप में कई अद्वितीय पहचानकर्ता हैं जिनके पास इतना अधिक डेटा है। मैं प्रत्येक नोड से name
पुनर्प्राप्त करना चाहता हूं।
कृपया इसे देखें।
क्या मैं अब तक की कोशिश की है: मैं addChildEventListener
उपयोग करने की कोशिश लेकिन यह केवल पहला बच्चा सुनता है। मैंने इसे डीबग किया है और यह केवल universities
नोड के पहले बच्चे के मान दिखा रहा था।
myRef.addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot dataSnapshot, String s) {
List<University> university = new ArrayList<>();
Map<String, Object> td = (HashMap<String, Object>) dataSnapshot.getValue();
Log.d("TAG",dataSnapshot.getValue().toString());
}
@Override
public void onChildChanged(DataSnapshot dataSnapshot, String s) {
}
@Override
public void onChildRemoved(DataSnapshot dataSnapshot) {
}
@Override
public void onChildMoved(DataSnapshot dataSnapshot, String s) {
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
मैंने addValueEventListener
भी कोशिश की है। यह पूरे नोड को सुनता है और पूरे डेटा को वापस करता है, लेकिन इसके लिए मैं "नाम" निकालने में असमर्थ हूं क्योंकि इसमें अद्वितीय पहचानकर्ता शामिल हैं।
कृपया मुझे सही दिशाओं में मार्गदर्शन करें।
myRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
University university = dataSnapshot.getValue(University.class);
List<University> universities = (List<University>) dataSnapshot.getValue(University.class);
*//*List<String> lst = new ArrayList<String>();
for(DataSnapshot dsp : dataSnapshot.getChildren()){
lst.add(dsp.getKey());
}
Log.d("TAG",lst.toString());*//*
Map<String, Object> td = (HashMap<String, Object>) dataSnapshot.getValue();
*//*List<Object> values = new ArrayList<Object>(td.values());
List<String> list=new ArrayList<String>();
for(int i=0; i<values.size(); i++){
list.add((String) values.get(i));
}*//*
Log.d("TAG", university.toString());
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
ठीक है मैंने पहली विधि का उपयोग किया था। वह विधि सूची हैशैप प्रकार डेटा सूची में। मेरा मतलब है कि अब कुल 3 सूचकांक है। और प्रत्येक अनुक्रमणिका में हैशैप प्रकार का डेटा होता है। और मैं इसका नाम प्राप्त करना चाहता हूं। मैं यह कैसे करूंगा? –
मुझे लगता है कि आपकी पोस्ट में उपयोग करने का तरीका अलग है। मेरे कोड में (एक विधि में), लूप के अंदर आपको यूनिवर्सिटी ऑब्जेक्ट मिलेगा, और इसका उपयोग विश्वविद्यालय द्वारा नाम संपत्ति तक पहुंच सकता है। नाम –
धन्यवाद, धन्यवाद –