2017-04-11 1 views
0

So habe ich die eine Datei mit Tweets in ihnen. etwas wie das.JSON zu POJO-Klasse in Java

{"text": "MVA/Transport. Greater Hume (Hume Hwy, Holbrook, NSW 2644) at 7 Mar 2017 03:58 #NSWRFS #MVATransport", "user": {"id": "4721717942", "name": "NSW Fire Updates"}, "lang": "en", "coordinates": { "coordinates": [147.273696, -35.785469] , "type":"Point"}, "created_at": "Mon Mar 06 17:29:31 +0000 2017"} 

Dies ist die Klasse, die ich geschaffen, die tweet.java ist, aber ich möchte alle Klassen innerhalb tweet.java setzen. zum Beispiel, Koordinaten und Benutzer sollte innerhalb sein tweet.java

das ist, was ich jetzt habe. also wie mache ich das die Koordinaten und Benutzer ist eine Unterklasse von Tweet.

JsonInclude.Include.NON_NULL) 

public class Tweet 
{ 
    private String text; 
    private String created_at; 
    private User user; 
    private Coordinates coordinates; 

    public tweet(); 

    public tweet (String text, String created_at, User user, Coordinates coordinates); 

    public String getText() { 
     return text; 
    } 
    public void setText (String text) { 
     this.text = text; 
    } 
    public String getCreated_at() { 
     return created_at; 
    } 
    public void setCreated_at (String created_at) { 
     this.created_at = created_at; 
    } 
    public User getUser() { 
     return user; 
    } 
    public void setUser (User user) { 
     this.user = user; 
    } 
    public Coordinates getCoordinates() { 
     return coordinates; 
    } 
    public void setCoordinates (Coordinates coordinates) { 
     this.coordinates = coordinates; 
    } 
    @Override 
    public String toString() { 
     return "ClassPojo [text = "+text+", created_at = "+created_at+", user = "+user+", coordinates = "+coordinates+"]"; 
    } 
} 


    public class Coordinates { 
     private String type; 
     private String[] coordinates; 
     public String getType() { 
      return type; 
     } 
     public void setType (String type) { 
      this.type = type; 
     } 
     public String[] getCoordinates() { 
      return coordinates; 
     } 
     public void setCoordinates (String[] coordinates) { 
      this.coordinates = coordinates; 
     } 
     @Override 
     public String toString() { 
      return "ClassPojo [type = "+type+", coordinates = "+coordinates+"]"; 
     } 
    } 
    public class User { 
     private String id; 
     private String name; 
     public String getId() { 
      return id; 
     } 
     public void setId (String id) { 
      this.id = id; 
     } 
     public String getName() { 
      return name; 
     } 
     public void setName (String name) { 
      this.name = name; 
     } 
     @Override 
     public String toString() { 
      return "ClassPojo [id = "+id+", name = "+name+"]"; 
     } 
    } 
+0

Vielleicht sollten Sie einen Blick auf [geschachtelte Klassen] (https://docs.oracle.com/javase/tutorial/java/javaOO/nested.html) – MadProgrammer

Antwort

0

Verwenden Sie den Objekt-Mapper von schnellerem XML. Siehe here

+0

Setzen von externen Links als Lösung ist keine wünschenswerte Antwort . – Ankit

+0

Deshalb habe ich zuerst geschrieben, was zu verwenden ist. Dann gab Link. –