Jackson - How to process (deserialize) nested JSON?

后端 未结 3 646
遇见更好的自我
遇见更好的自我 2020-11-29 01:18
{
  vendors: [
    {
      vendor: {
        id: 367,
        name: \"Kuhn-Pollich\",
        company_id: 1,
      }
    },
    {
      vendor: {
        id: 374,
           


        
3条回答
  •  死守一世寂寞
    2020-11-29 01:53

    @Patrick I would improve your solution a bit

    @Override
    public Object deserialize(JsonParser jp, DeserializationContext ctxt)
            throws IOException, JsonProcessingException {        
        ObjectNode objectNode = jp.readValueAsTree();
        JsonNode wrapped = objectNode.get(wrapperKey);
        JsonParser parser = node.traverse();
        parser.setCodec(jp.getCodec());
        Vendor mapped = parser.readValueAs(Vendor.class);
        return mapped;
    }
    

    It works faster :)

提交回复
热议问题