反序列化我需要一种方法来反序列化该对象:与杰克逊
{
"rows": [
{
"id": 0,
"name": "qwe"
}
],
"total": 0
}
到行[](我不需要 “总”)WITHOUT WAPPER OBJECT OF USING:
public class ReviewsWrapper {
private Row[] rows;
@JsonIgnore
private Integer total;
}
直接反序列化为行[]?如果没有“总”的对象,我只想反序列化使用这种方法:
public static <T> T fromJsonWithRootName(InputStream is, Class<T> type, String rootName) {
try {
return objectMapper.reader(type).withRootName(rootName).readValue(is);
} catch (IOException e) {
throw new RuntimeException(e);
}
}
通过“行”作为根名称,并会得到行[]作为输出。有没有办法避免使用Row []的WrapperObject?这是一个我使用Jackson注释定义实体的Android项目。
尝试 列表数据=新GSON()fromJson(JSON,新TypeToken <列表>(){}的getType()。)。 –
我不认为你可以。如果没有“total”属性,你的推测尝试的另一种方法是使用'UNWRAP_ROOT_VALUE'来配置你的'ObjectMapper'。顺便说一句,你的JSON有一个额外的关闭花括号。 – Mena
@Mena固定错字。不过,我期望不使用UNWRAP_ROOT_VALUE的解决方案。 – localhost