Jackson 序列化忽略指定類型的屬性

本文準確來講是探討如何用 Jackson 來序列化 Apache avro 對象,因爲簡單用 Jackson 來序列化 Apache avro 對象會報錯。原因是序列化 Schema getSchema() 時會報錯,後面會講到,需要序列化時忽略該屬性。那麼能不能在 getSchema() 上加上 @JsonIgnore 來忽略該屬性呢?原理上是通的。不過手工修改的 avsc 生成的 Java 文件隨時會因爲重新編譯而還原,所以不太具有實際可操作性,當然通過定製編譯 avsc 用的模板文件來加入 @JsonIgnore 是另一回事。

由於不能在要忽略的字段上添加 JsonIgnore 來控制,而如果我們明確了要忽略的字段類型的話,是能夠定製 Jackson 的  ObjectMapper  來屏蔽某個特定的類型。來看下面序列化 Apache avro 對象的例子:

假設我們有一個 Apache 的 Schema 文件 user.avsc, 內容如下: 閱讀全文 >>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章