jackson json 轉換Bean, Bean 裡沒有對應的值 jackson Unrecognized field

來源:互聯網
上載者:User

I use jackson for converting JSON to Object class.

JSON:

{ "aaa":"111", "bbb":"222", "ccc":"333" }

Object Class:

class Test{    public String aaa;    public String bbb;}

Code:

ObjectMapper mapper = new ObjectMapper();Object obj = mapper.readValue(content, valueType);

My code throws exception like that: org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Unrecognized field "cccc" (Class com.isoftstone.banggo.net.result.GetGoodsInfoResult), not marked as ignorable

And I don't want to add a prop to class Test,I just want jackson convert the exist value whith is also exist in Test.

 

 

 

 

Jackson provides a few different mechanisms to configure handling of "extra" JSON elements.  Following is an example of configuring the
ObjectMapper to not FAIL_ON_UNKNOWN_PROPERTIES.

import org.codehaus.jackson.annotate.JsonAutoDetect.Visibility;import org.codehaus.jackson.annotate.JsonMethod;import org.codehaus.jackson.map.DeserializationConfig;import org.codehaus.jackson.map.ObjectMapper;public class JacksonFoo{  public static void main(String[] args) throws Exception  {    // { "aaa":"111", "bbb":"222", "ccc":"333" }    String jsonInput = "{ \"aaa\":\"111\", \"bbb\":\"222\", \"ccc\":\"333\" }";    ObjectMapper mapper = new ObjectMapper().setVisibility(JsonMethod.FIELD, Visibility.ANY);    mapper.configure(DeserializationConfig.Feature.FAIL_ON_UNKNOWN_PROPERTIES, false);    Test test = mapper.readValue(jsonInput, Test.class);  }}class Test{  String aaa;  String bbb;}

For other approaches, see

http://wiki.fasterxml.com/JacksonHowToIgnoreUnknown

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.