Introduction
在我們開發Rest API時,Jackson只不過是2.4.x版本而已;在我深入研究時,已經到2.7.1了,其間也只不過半年。但在深入研究時,卻發現介面與行為上的改變,因此做些記錄下來,讓大家可以參考。
List of Changes
這篇文章針對2.4.5到2.7.1,內容隨著開發遇到的問題持續增加:
VisibilityChecker
VisibilityChecker<?> checker = mapper.getVisibilityChecker(). withGetterVisibility(Visibility.NONE). withIsGetterVisibility(Visibility.NONE);
在2.4.5版本可以這樣設定到ObjectMapper:
mapper.setVisibilityChecker(checker);
在2.6版本後,setVisibilityChecker被宣告為@Deprecated;在2.7.1版本可以改用:
mapper.setVisibility(checker);
FilterProvider
FilterProvider simpleFilter = new SimpleFilterProvider().addFilter( "simpleFilter", SimpleBeanPropertyFilter.filterOutAllExcept());
在2.4.5版本可以這樣設定到ObjectMapper:
mapper.setFilters(simpleFilter);
在2.6版本後,setFilters被宣告為@Deprecated;在2.7.1版本可以改用:
mapper.setFilterProvider(simpleFilter);
PropertyWriter & BeanPropertyWriter
2.7版本後,PropertyWriter支援isRequired(),可以取得JsonProperty所設定的required()內容。
留言
張貼留言