【发布时间】:2015-07-29 10:17:26
【问题描述】:
不能用Jackson 创建一个内部类的列表吗?外部类Tradables 将完美运行。但是内部类 Underlyings 将不起作用(当然,如果我将 Tradables 设为内部类也是如此)。
有没有办法解决这个问题,而不让每个属于 json 对象数组的类都在它自己的类中?
JsonProperty 是否高于 set 方法也没有关系。任何不属于数组的内部类也可以工作。
private String sector_group;
@JsonProperty("underlyings")
private List<Underlyings> listUnderlyings;
@JsonProperty("tradables")
private List<Tradables> listTradables;
public class Underlyings {
private long instrument_id;
private String symbol;
private String isin_code;
public long getInstrument_id() {
return instrument_id;
}
public void setInstrument_id(long instrument_id) {
this.instrument_id = instrument_id;
}
public String getSymbol() {
return symbol;
}
public void setSymbol(String symbol) {
this.symbol = symbol;
}
public String getIsin_code() {
return isin_code;
}
public void setIsin_code(String isin_code) {
this.isin_code = isin_code;
}
}
映射方法
ObjectMapper mapper = new ObjectMapper();
try {
String json = RestLogin.getBaseResource()
.path("instruments").path("lookup").path("market_id_identifier").path(market_id + ":" + identifier)
.request(RestLogin.getResponsetype()).get(String.class);
List<Instrument> tmpInstruments = mapper.readValue(json, mapper.getTypeFactory().constructCollectionType(List.class, Instrument.class));
【问题讨论】: