Java Jackson JSON API反序列化流式处理无法识别的字段

Java Jackson JSON API反序列化流式处理无法识别的字段,java,jackson,Java,Jackson,我有一个json: [{"cdCondicaoPagto":"1","NrParcela":1,"NrDias":0}] 这门课: public static class CondicaoPagtoItem implements Serializable { private String cdCondicaoPagto; private Integer NrParcela; private Integer NrDias; public CondicaoPag

我有一个json:

[{"cdCondicaoPagto":"1","NrParcela":1,"NrDias":0}]
这门课:

public static class CondicaoPagtoItem implements Serializable {

    private String cdCondicaoPagto;
    private Integer NrParcela;
    private Integer NrDias;

    public CondicaoPagtoItem() {
    }

    public String getCdCondicaoPagto() {
        return cdCondicaoPagto;
    }

    public void setCdCondicaoPagto(String cdCondicaoPagto) {
        this.cdCondicaoPagto = cdCondicaoPagto;
    }

    public Integer getNrParcela() {
        return NrParcela;
    }

    public void setNrParcela(Integer NrParcela) {
        this.NrParcela = NrParcela;
    }

    public Integer getNrDias() {
        return NrDias;
    }

    public void setNrDias(Integer NrDias) {
        this.NrDias = NrDias;
    }
}
我试着通过流媒体阅读,这样:

JsonFactory jsonFactory = new JsonFactory();
ObjectMapper jsonMapper = new ObjectMapper(jsonFactory);
JsonNode jsonNodeGeral = jsonMapper.readTree(new File("/home/cechinel/Documentos/CondicaoPagtoItem.json"));  

Iterator<JsonNode> elements = jsonNodeGeral.getElements();

while(elements.hasNext()){
    JsonNode jsonNode = elements.next();

    CondicaoPagtoItem condicao = jsonMapper.treeToValue(jsonNode, CondicaoPagtoItem.class);
}
JsonFactory-JsonFactory=new-JsonFactory();
ObjectMapper jsonMapper=新的ObjectMapper(jsonFactory);
JsonNode jsonNodeGeral=jsonMapper.readTree(新文件(“/home/cechinel/Documentos/CondicaoPagtoItem.json”);
迭代器元素=jsonNodeGeral.getElements();
while(elements.hasNext()){
JsonNode JsonNode=elements.next();
CondicaoPagtoItem condicao=jsonMapper.treeToValue(jsonNode,CondicaoPagtoItem.class);
}
但它会导致以下错误:

无法识别的属性异常:无法识别的字段“NrParcela”


如果我使用注释@JsonProperty,它可以工作,但我不想在哪个整数字段中工作。

听起来更像是命名约定不匹配
setNrParcela
将映射到一个字段名
nrParcela
,但是您的JSON文档将“n”大写为
nrParcela

如果无法更改JSON字段的大小写,则可以使用覆盖名称的
@JsonProperty

@JsonProperty("NrParcela")

但既然您不想这样做,那么另一个选择就是实现.< /p>它听起来更像是一个命名约定不匹配。code>setNrParcela将映射到一个字段名
nrParcela
,但是您的JSON文档将“n”大写为
nrParcela

如果无法更改JSON字段的大小写,则可以使用覆盖名称的
@JsonProperty

@JsonProperty("NrParcela")

但由于您不想这样做,另一个选择是实现.< /p> OMG。我不相信我没有看到那个kkk。非常感谢。我的天啊。我不相信我没有看到那个kkk。非常感谢。它起作用了^^