0

Android アプリでの JSON 解析に Jackson パーサーを使用しています。JSONデータは次の形式です

data: {
train_number: "12951",
chart_prepared: false,
class: "2A"
}

Javaでクラス名を使用してプロパティを解析するには? 私を助けてください。

4

1 に答える 1

1

最初に - あなたの JSON は有効ではありません。次のようになります。

{"train_number":1,"chart_prepared":false,"class":"2A"}

@JsonProperty注釈を使用して、デフォルトの name プロパティを変更できます。POJO クラスは次のようになります。

class Data {

    private int train_number;
    private boolean chart_prepared;

    @JsonProperty(value = "class")
    private String clazz;

    ...
}

これで、簡単なテスト メソッドを作成できます。

import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.ObjectMapper;

public class JacksonProgram {

    public static void main(String[] args) throws Exception {
        Data data = new Data();
        data.setTrain_number(1);
        data.setClazz("2A");

        ObjectMapper objectMapper = new ObjectMapper();
        String json = objectMapper.writeValueAsString(data);
        System.out.println(json);

        System.out.println(objectMapper.readValue(json, Data.class));
    }
}

上記のプログラムは次のように出力します:

{"train_number":1,"chart_prepared":false,"class":"2A"}
Data [train_number=1, chart_prepared=false, clazz=2A]
于 2013-06-17T21:51:55.470 に答える