Convert Value With Child Into Java Object In Firebase Android

I have read the question on how get value with it's child in Firebase.

enter image description here

Now I want to convert that value into a Java object. Can I do that? If can, how I can achieve that?



Now I want to convert that value into a Java object. Can I do that?

Of course you can! Actually I have answered that question too. So to solve this, first you need to create two POJO (model) classes:

class MailId {
    public String email, name;

    MailId() {}


class MailText {
    public String subject, title;

    MailText() {}

To get that data as objects of MailId and MailText classes, please use the following code:

DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference newRef = rootRef.child("new");
ValueEventListener valueEventListener = new ValueEventListener() {
    public void onDataChange(DataSnapshot dataSnapshot) {
        for(DataSnapshot ds : dataSnapshot.child("mailID").getChildren()) {
            MailId mailId = ds.getValue(MailId.class);
            Log.d("TAG", + " / " +;
        for(DataSnapshot ds : dataSnapshot.child("mailText").getChildren()) {
            MailText mailText = ds.getValue(MailText.class);
            Log.d("TAG", mailText.subject + " / " + mailText.title);

    public void onCancelled(DatabaseError databaseError) {
        Log.d(TAG, databaseError.getMessage()); //Don't ignore errors!