使用jackson來進行json和java對象的轉換注意點


轉換

對象轉JSON

objectMapping.writeValueAsString(obj)

JSON轉對象

objectMapping.readValue(str, ojb.class)

說明

  • json字符串中的key應該與java對象的屬性名相同
  • java對象中屬性如果為private,則需要顯示生成getter/setter方法;如果屬性為public,則可以不必寫getter/setter方法
  • java對象如果有自定義的構造方法,json字符串轉換為java對象時會出錯
  • 如果json字符串中的屬性個數小於java對象中的屬性個數,可以順利轉換,java中多的那個屬性為null
  • 如果json字符串中出現java對象中沒有的屬性,則在將json轉換為java對象時會報錯:Unrecognized field, not marked as ignorable
    解決方法:

    在目標對象的類級別上添加注解:@JsonIgnoreProperties(ignoreUnknown = true)

  • java對象名和json中名不一致時解決方法:

    在目標對象的字段級別上添加注解:@JsonProperty(value = "name")


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM