2013-11-06 2 views
1

У меня есть JSON как это:RoboSpice-дооснащения POJO

{"meta": {...}, "objects": [{...}, {...}]} 

Но проблема заключается в том, чтобы построить класс POJO. Из образцов есть только один пример с простым JSON.

Я пытался что-то вроде этого:

class Test { 
    public ArrayList<String> meta; 

    public static class Object { 
     public String testField; 
    } 

    public static class Objects extends ArrayList<Object>{} 
} 

А в классе RetrofitRequest я использую Test.Objects.class

Любая помощь будет оценен по достоинству!

+0

Можете ли вы опубликовать целую строку json? –

+0

Это что-то вроде этого: '{" meta ": {" limit ": 20," next ": null," offset ": 0," previous ": null," total_count ": 1}," objects ": [ {"description": "", "downloads": 0, "family_filter": 0, "id": 1, "image_url": "/static/img/wallpapers/1.jpg", "rating": 0.0, " resource_uri ":"/api/v1/wallpapers/1/"," size ": 895," tags ":" nature, leafs, autumn "," title ":" Autumn Leafs "," uploaded_date ":" 2013-11 -06 "}]}' – Seishin

+0

См. Мой обновленный ответ. –

ответ

2

Я установил его с создания классов для meta и object где объекты находятся в ArrayList<Object>

Спасибо!

2

Это класс POJO для хранения и разбора JSON

1) Meta.java

public class Meta { 
    private int limit; 
    private String next; 
    private int offset; 
    private String previous; 
    private int total_count; 
    public int getLimit() { 
     return limit; 
    } 
    public void setLimit(int limit) { 
     this.limit = limit; 
    } 
    public String getNext() { 
     return next; 
    } 
    public void setNext(String next) { 
     this.next = next; 
    } 
    public int getOffset() { 
     return offset; 
    } 
    public void setOffset(int offset) { 
     this.offset = offset; 
    } 
    public String getPrevious() { 
     return previous; 
    } 
    public void setPrevious(String previous) { 
     this.previous = previous; 
    } 
    public int getTotal_count() { 
     return total_count; 
    } 
    public void setTotal_count(int total_count) { 
     this.total_count = total_count; 
    } 

} 

2) Objects.java

public class Objects { 
    private String description; 
    private int downloads; 
    private int family_filter; 
    private int id; 
    private String image_url; 
    private int rating; 
    private String resource_uri; 
    private int size; 
    private String tags; 
    private String title; 
    private String uploaded_date; 
    public String getDescription() { 
     return description; 
    } 
    public void setDescription(String description) { 
     this.description = description; 
    } 
    public int getDownloads() { 
     return downloads; 
    } 
    public void setDownloads(int downloads) { 
     this.downloads = downloads; 
    } 
    public int getFamily_filter() { 
     return family_filter; 
    } 
    public void setFamily_filter(int family_filter) { 
     this.family_filter = family_filter; 
    } 
    public int getId() { 
     return id; 
    } 
    public void setId(int id) { 
     this.id = id; 
    } 
    public String getImage_url() { 
     return image_url; 
    } 
    public void setImage_url(String image_url) { 
     this.image_url = image_url; 
    } 
    public int getRating() { 
     return rating; 
    } 
    public void setRating(int rating) { 
     this.rating = rating; 
    } 
    public String getResource_uri() { 
     return resource_uri; 
    } 
    public void setResource_uri(String resource_uri) { 
     this.resource_uri = resource_uri; 
    } 
    public int getSize() { 
     return size; 
    } 
    public void setSize(int size) { 
     this.size = size; 
    } 
    public String getTags() { 
     return tags; 
    } 
    public void setTags(String tags) { 
     this.tags = tags; 
    } 
    public String getTitle() { 
     return title; 
    } 
    public void setTitle(String title) { 
     this.title = title; 
    } 
    public String getUploaded_date() { 
     return uploaded_date; 
    } 
    public void setUploaded_date(String uploaded_date) { 
     this.uploaded_date = uploaded_date; 
    } 



} 

3) Наконец ваш Test.java

public class Test { 
    private Meta meta; 
    private List<Objects> objects; 
    public Meta getMeta() { 
     return meta; 
    } 
    public void setMeta(Meta meta) { 
     this.meta = meta; 
    } 
    public List<Objects> getObjects() { 
     return objects; 
    } 
    public void setObjects(List<Objects> objects) { 
     this.objects = objects; 
    } 

} 

Попробуйте, как это.

Это полный класс POJO, который будет содержать разобранный json.

+0

Как вы получите список элементов списка? 'Test test = new Test(); test.getObjects(); ' Я пробовал, и никакого результата. Я также пробовал итератор и результат тоже: 'while (test.getObjects(). Iterator(). HasNext()) test.getObjects(). Iterator(). Next()' Есть советы? – Choletski

Смежные вопросы