GSONを使用してJSONからPOJO(Plan Old Java Object)を作成するのに問題があるようです。このチュートリアルに従ってT に進みましたが、まだ null オブジェクトを取得しています。これが私のコードです:
JSONHandler.java
public class JSONHandler
{
private Gson gson;
private InputStream is;
private Reader reader;
private TripList tripList;
public JSONHandler(InputStream is)
{
this.is = is;
gson = new Gson();
reader = new InputStreamReader(is);
tripList = gson.fromJson(reader, TripList.class);
}
public Gson getGson() {
return gson;
}
public void setGson(Gson gson) {
this.gson = gson;
}
TripList.java
public class TripList
{
@SerializedName("Line")
public String line;
@SerializedName("CurrentTime")
public int currentTime;
public List<Train> Trips;
}
トレイン.java
public class Train
{
@SerializedName("TripID")
public String tripID;
@SerializedName("Destination")
public String dest;
public List<Prediction> Predictions;
}
予測.java
public class Prediction
{
@SerializedName("StopID")
public int stopID;
@SerializedName("Stop")
public String stop;
@SerializedName("Seconds")
public int seconds;
}
blue.json
{
"TripList":
{
"CurrentTime":1342032950,
"Line":"Red",
"Trips": [
{
"TripID":"R982ECC1E",
"Destination":"Alewife",
"Predictions": [
{"StopID":"70094","Stop":"Ashmont","Seconds":370}
]
},
{
"TripID":"R982ECC78",
"Destination":"Ashmont",
"Note":"Big Red",
"Position":
{"Timestamp":1342032834,"Train":"1809","Lat":42.38725,"Long":-71.11894,"Heading":185},
"Predictions": [
{"StopID":"70067","Stop":"Harvard Square","Seconds":36},
{"StopID":"70069","Stop":"Central Square","Seconds":260}
]
}
]
}
}
JSON 形式はこのパラダイムに従います。何かを正しく解析できない場合、GSON はエラーをスローしません。ただ、イライラする null 値を返すだけです。Java データ オブジェクトの形式または処理方法に何か問題がありますか? どんな助けでも大歓迎です