Giriş
Şu satırı dahil ederiz.
constructor
Bir tabloyu okumamızı sağlar. Önce veritabanına bağlanmak için şöyle yaparız.
Şöyle yaparız.
Şu satırı dahil ederiz.
import com.google.firebase.database.DatabaseReference;
Bu sınıf Query sınıfından kalıtır. Bu sınıf eski Firebase Sınıfı yerine geldi.constructor
Bir tabloyu okumamızı sağlar. Önce veritabanına bağlanmak için şöyle yaparız.
DatabaseReference ref= FirebaseDatabase.getInstance().getReference();
Belli bir tabloyu okumak için şöyle yaparız.//Get datasnapshot at your "users" root node
DatabaseReference ref = ref.child("users");
addChildEventListener metoduŞöyle yaparız.
ChildEventListener childEventListener = new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot dataSnapshot, String previousChildName){
...
}
@Override
public void onChildChanged(DataSnapshot dataSnapshot, String previousChildName){
..
}
@Override
public void onChildRemoved(DataSnapshot dataSnapshot) {
...
}
@Override
public void onChildMoved(DataSnapshot dataSnapshot, String previousChildName){
...
}
@Override
public void onCancelled(DatabaseError databaseError) {
...
}
};
ref.addChildEventListener(childEventListener);
ref nesnesi Movie veritabanı içinse onChildAdded'e gelen dataSnapshot Movie nesnelerini içerir. Eğer şöyle yaparsak her Movie nesnesinin string üyelerine erişiriz.
Şöyle yaparız.for (DataSnapshot ds : dataSnapshot.getChildren())
{
...
}
addListenerForSingleValueEvent metoduref.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
//Get map of users in datasnapshot
...
}
@Override
public void onCancelled(DatabaseError databaseError) {
//handle databaseError
}
});
Örneğin Movie nesnesindeki bir alanın varlığını kontrol etmek için şöyle yaparız.ref.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
void onDataChange(DataSnapshot snapshot) {
if (snapshot.hasChild("name")) {
// run some code
}
}
});
addValueEventListener metodu
Açıklaması şöyle
Bir başka açıklama, her ne kadar eski Firebase Sınıfı için yazılmış olsa da aynı anlama geliyor ve şöyleThis method will be called anytime new data is added to our Firebase reference, and we don't need to write any extra code to make this happen.
city veritabanındaki nesnelere erişmek için şöyle yaparız.In the example above, the value event will fire once for the initial state of the data, and then again every time the value of that data changes.
ArrayList<String> cityList = new ArrayList<>();
ref.child("cities").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
cityList.clear();
for (DataSnapshot data : dataSnapshot.getChildren()){
cityList.add(data.getKey);
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
Log.w(TAG, "getUser:onCancelled", databaseError.toException());
// ...
}
});
orderByKey metodu
Şöyle yaparız.
Şöyle yaparız.
Açıklaması şöyle
Şöyle yaparız.
Query query = ref
.orderByKey().startAt("...").endAt("...");
push metoduŞöyle yaparız.
Movie m = new Movie();
...
ref.push().setValue (m);
setValue metoduAçıklaması şöyle
Basic write operationsFor basic write operations, you can use setValue() to save data to a specified reference, replacing any existing data at that path. You can use this method to:Pass types that correspond to the available JSON types as follows:
- String
- Long
- Double
- Boolean
- Map<String, Object>
- List<Object>
- Pass a custom Java object, if the class that defines it has a default constructor that takes no arguments and has public getters for the properties to be assigned.
Foo foo = new Foo (...);
ref.push().setValue(foo);
Hiç yorum yok:
Yorum Gönder