我正在使用 Jackson 解析器在 android 应用程序中进行 JSON 解析。JSON数据格式如下
data: {
train_number: "12951",
chart_prepared: false,
class: "2A"
}
如何在 Java 中使用类名解析属性?请帮我。
我正在使用 Jackson 解析器在 android 应用程序中进行 JSON 解析。JSON数据格式如下
data: {
train_number: "12951",
chart_prepared: false,
class: "2A"
}
如何在 Java 中使用类名解析属性?请帮我。
一开始 - 您的 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]