1

JSON URL のデータを返すコードを作成しました。データは文字列として保存されます。出力の例を次に示します。

{

"status": "success",

"records": [

    {
        "timestamp": 1381312251599,
        "deviceId": "288",
        "temperature": 17
    },

    {
        "timestamp": 1381312281599,
        "deviceId": "288",
        "temperature": 17
    },

    {
        "timestamp": 1381312311599,
        "deviceId": "288",
        "temperature": 17
    }
]
}

この情報を取得するために使用されるコードのサンプルを次に示します。

String jsonString = callURL("http://localhost:8000/eem/api/v1/metrics/temperature/288");
System.out.println(jsonString);

助けが必要なのは、Status フィールドを作成してから、Timestamp、DeviceId、Temperature などの値を保持するレコード配列を作成することです。

GSONを見てみましたが、よくわかりません

誰かが助けてくれたら、それは素晴らしいことです、ありがとう

4

3 に答える 3

0

私はジャクソンを使用していますが、それは非常に簡単です。

jsonString と同じプロパティを持つ適切な Java クラスを作成する必要があります。

このようなものを作成する必要があります

class Record {
   private Long timestamp;
   private Integer deviceId;
   private Integer temperature;

   // getters and setters ...
}

class Response {

  private String status;
  private List<Record> records;

   // getters and setters ...

}

その後

ObjectMapper mapper = new ObjectMapper();
return mapper.readValue(jsonString, Response.class);
于 2013-10-09T11:33:00.170 に答える
0

とてもシンプルです。json 構造に一致する Java クラスを作成する必要があります。

例えば

public class Response {
     String status;
     List<Record> records;
}

public class Record {
     long timestamp;
     int deviceId;
     int temperature;
}

そして、あなたのjsonとResponse.classgsonを提供してください。

于 2013-10-09T11:24:55.440 に答える