在 Android 中为此 JSON 文件创建数据模型

create data model for this JSON file in Android

我目前在 android 开始使用 Firebase,所以我在创建数据时遇到问题 models.So 请帮助我从 android 创建以下 JSON 的数据模型工作室。

喜欢:

Firebase ref = new Firebase(Firebase_Url);
ref.child("Student").setValue(anyVariable);

此代码在 firebase 中生成一个简单模型并存储数据,但我想像下面这样存储更多数据。

如果你们能提供帮助,我们将不胜感激。

"restaurants" : [
{
    "name": "Burger Bar",
    "backgroundImageURL": "http://somthing.com/Images/1.png",
    "category" : "Burgers",
    "contact": {
        "phone": "1231231231",
        "formattedPhone": "(123) 123-1231",
        "twitter": "1twitter"
    },
    "location": {
        "address": "5100 Belt Line Road, STE 502",
        "crossStreet": "Dallas North Tollway",
        "lat": 32.950787,
        "lng": -96.821118,
        "postalCode": "75254",
        "cc": "US",
        "city": "Addison",
        "state": "TX",
        "country": "United States",
        "formattedAddress": [
            "5100 Belt Line Road, STE 502 (Dallas North Tollway)",
            "Addison, TX 75254",
            "United States"
        ]
    }
} 

我找到了解决方案:)

解决方案:

1) 在 Android Studio 中创建一个新项目 2) 更改数据库规则以无需身份验证即可访问它。喜欢

enter image description here

3) 首先你必须在 Firebase 控制台创建新项目。

4) 在build.gradle(Module:app)

中添加这个依赖
compile 'com.firebase:firebase-client-android:2.4.0'

5) 添加新的 class Restaurants.java

public class Restaurants {

    String name;
    String imageUrl;
    String catagory;
    Contacts contacts = new Contacts();
    Location location = new Location();

    public Restaurants(String name, String imageUrl, String catagory, Contacts contacts, Location location) {
        this.name = name;
        this.imageUrl = imageUrl;
        this.catagory = catagory;
        this.contacts = contacts;
        this.location = location;
    }

    public String getCatagory() {
        return catagory;
    }

    public void setCatagory(String catagory) {
        this.catagory = catagory;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getImageUrl() {
        return imageUrl;
    }

    public void setImageUrl(String imageUrl) {
        this.imageUrl = imageUrl;
    }

    public Location getLocation() {
        return location;
    }

    public void setLocation(Location location) {
        this.location = location;
    }

    public Contacts getContacts() {
        return contacts;
    }

    public void setContacts(Contacts contacts) {
        this.contacts = contacts;
    }
}

6) 创建 class Contacts.java

public class Contacts {

    String phone, formattedPhone, twitter;

    // 0 argument constructor to initialize the Contatcs Object in Resturants.java
        public Contacts() {}

        public Contacts(String phone, String formattedPhone, String twitter) {
            this.phone = phone;
            this.formattedPhone = formattedPhone;
            this.twitter = twitter;
        }

        public String getPhone() {
            return phone;
        }

        public void setPhone(String phone) {
            this.phone = phone;
        }

        public String getFormattedPhone() {
            return formattedPhone;
        }

        public void setFormattedPhone(String formattedPhone) {
            this.formattedPhone = formattedPhone;
        }

        public String getTwitter() {
            return twitter;
        }

        public void setTwitter(String twitter) {
            this.twitter = twitter;
        }
    }

7) 创建 class Location.java

public class Location {

    String address, city, state, country;
    ArrayList<Address> addressList;

    public Location(){}

    public Location(String address, String city, String state, String country, ArrayList<Address> addressList) {
        this.address = address;
        this.city = city;
        this.state = state;
        this.country = country;
        this.addressList = addressList;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    public String getState() {
        return state;
    }

    public void setState(String state) {
        this.state = state;
    }

    public String getCountry() {
        return country;
    }

    public void setCountry(String country) {
        this.country = country;
    }

    public ArrayList<Address> getAddressList() {
        return addressList;
    }

    public void setAddressList(ArrayList<Address> addressList) {
        this.addressList = addressList;
    }
}

8) 创建 class Address.java

public class Address {

    String street, area;

    // 0 argument constructor to initialize the Address Object in Restaurants.java
    public Address(){}

    public Address(String street, String area) {
        this.street = street;
        this.area = area;
    }

    public String getStreet() {
        return street;
    }

    public void setStreet(String street) {
        this.street = street;
    }

    public String getArea() {
        return area;
    }

    public void setArea(String area) {
        this.area = area;
    }
}

9)现在MainActivity.javaclass会这样

public class MainActivity extends AppCompatActivity {

    ArrayList<Restaurants> restaurantsList;
    ArrayList<Address> addressList;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Firebase.setAndroidContext(this);

        //Initializing the ArrayLists
        restaurantsList = new ArrayList<Restaurants>();
        addressList = new ArrayList<Address>();

        //Adding data to ArrayLists
        addressList.add(new Address("Street 5", "Mohafiz Town"));
        addressList.add(new Address("Street 6", "Wapda Town"));

        restaurantsList.add(new Restaurants("Ehsan", "url1", "student", new Contacts("0303-5367228", "no", "my Twitter"),
               new  Location("202-A", "GRW","pak","Pakistan", addressList)));

        //Storing Data to Firebase
        Firebase ref = new Firebase("https://fir-datamodelingprac.firebaseio.com/");
        ref.setValue(restaurantsList);
    }
}

10) 运行 应用

11) firebase 中的输出会像这样

enter image description here