0

我正在使用 Jackson 解析器在 android 应用程序中进行 JSON 解析。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您可以使用注释更改默认名称属性。您的 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 回答