亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Jackson序列化和反序列化忽略字段操作

 更新時間:2020年09月28日 09:10:28   作者:情非得已1991  
這篇文章主要介紹了Jackson序列化和反序列化忽略字段操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

一、設(shè)置Jackson序列化時只包含不為空的字段

new ObjectMapper().setSerializationInclusion(Include.NON_NULL);

二、設(shè)置在反序列化時忽略在JSON字符串中存在,而在Java中不存在的屬性

new ObjectMapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);

三、Jackson序列化時忽略字段的方式

1、方式一:FilterProvider

a)在需要忽略某些字段的bean上添加@JsonFilter("fieldFilter")

b)ObjectMapper設(shè)置過濾器

  FilterProvider filterProvider = new SimpleFilterProvider();

  SimpleBeanPropertyFilter fieldFilter = SimpleBeanPropertyFilter().serializeAllExcept("name");
  filterProvider.addFilter("fieldFilter");
  new ObjectMapper.setFilters(filterProvider );

2、方式二:使用@JsonIgnore

在需要忽略的字段上標(biāo)注注解@JsonIgnore,在序列化時即可忽略該字段

補充知識:Jackson 序列化對象成 JSON 字符串,忽略部分字段(屬性)

1、屬性上 加 @JsonIgnore

這種方式作用于全局,只要是有這個對象的序列化,就會忽略注解過的這部分字段。

2、上面那種方式需要在 bean 上加注解,作用于全局,但是有的時候,我們可能不需要在所有情況下都忽略這個對象的這些字段,下面這種方式可以支持定制過濾方式。

public final class JsonFilterUtil {

  /**
   * 添加過濾的字段,這里過濾的是 ThinActivityInfo 這個 bean 下的 
   * "startAt", "expiredAt", "extra" 三個字段
   */
  public static void addFilterForMapper(ObjectMapper mapper) {
    SimpleBeanPropertyFilter fieldFilter = SimpleBeanPropertyFilter.serializeAllExcept(
        Sets.newHashSet("startAt", "expiredAt", "extra"));
    SimpleFilterProvider filterProvider = new SimpleFilterProvider().addFilter("fieldFilter", fieldFilter);
    mapper.setFilterProvider(filterProvider).addMixIn(ThinActivityInfo.class, FieldFilterMixIn.class);
  }

  /**
   * 定義一個類或接口
   */
  @JsonFilter("fieldFilter")
  interface FieldFilterMixIn{
  }
}

以上這篇Jackson序列化和反序列化忽略字段操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • @KafkaListener 如何使用

    @KafkaListener 如何使用

    這篇文章主要介紹了@KafkaListener 如何使用,本文通過圖文實例代碼相結(jié)合給大家詳細講解,文末給大家介紹了kafka的消費者分區(qū)分配策略,需要的朋友可以參考下
    2023-02-02
  • 新手必備的IDEA常用設(shè)置總結(jié)

    新手必備的IDEA常用設(shè)置總結(jié)

    今天給大家總結(jié)了一些IDEA的常用設(shè)置,文中有非常詳細的圖文介紹,對正在學(xué)習(xí)使用IDEA的小伙伴們很有幫助,需要的朋友可以參考下
    2021-05-05
  • RocketMQ順序消息的原理與特點

    RocketMQ順序消息的原理與特點

    RocketMQ作為一款純java、分布式、隊列模型的開源消息中間件,支持事務(wù)消息、順序消息、批量消息、定時消息、消息回溯等,本篇我們了解如何實現(xiàn)順序消息的原理與特點
    2023-02-02
  • Java判斷當(dāng)前日期是周幾的方法匯總

    Java判斷當(dāng)前日期是周幾的方法匯總

    在Java編程中,我們經(jīng)常會遇到需要獲取當(dāng)前日期是周幾的需求。根據(jù)國際慣例,一周通常是從周一開始,到周日結(jié)束,記作1至7,本文將介紹幾種常用的Java方法,讓你能夠準(zhǔn)確地判斷當(dāng)前日期是周幾,感興趣的朋友一起看看吧
    2024-03-03
  • Java多線程教程之如何利用Future實現(xiàn)攜帶結(jié)果的任務(wù)

    Java多線程教程之如何利用Future實現(xiàn)攜帶結(jié)果的任務(wù)

    Callable與Future兩功能是Java?5版本中加入的,這篇文章主要給大家介紹了關(guān)于Java多線程教程之如何利用Future實現(xiàn)攜帶結(jié)果任務(wù)的相關(guān)資料,需要的朋友可以參考下
    2021-12-12
  • 分隔List集合,按指定大小,將集合分成多個的方法

    分隔List集合,按指定大小,將集合分成多個的方法

    下面小編就為大家?guī)硪黄指鬖ist集合,按指定大小,將集合分成多個的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • Java調(diào)用opencv IDEA環(huán)境配置的教程詳解

    Java調(diào)用opencv IDEA環(huán)境配置的教程詳解

    這篇文章主要為大家詳細介紹了Java調(diào)用opencv IDEA環(huán)境配置的相關(guān)知識,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-03-03
  • JFileChooser實現(xiàn)對選定文件夾內(nèi)圖片自動播放和暫停播放實例代碼

    JFileChooser實現(xiàn)對選定文件夾內(nèi)圖片自動播放和暫停播放實例代碼

    這篇文章主要介紹了JFileChooser實現(xiàn)對選定文件夾內(nèi)圖片自動播放和暫停播放實例代碼,需要的朋友可以參考下
    2017-04-04
  • Java泛型常見面試題(面試必問)

    Java泛型常見面試題(面試必問)

    泛型在java中有很重要的地位,在面向?qū)ο缶幊碳案鞣N設(shè)計模式中有非常廣泛的應(yīng)用。java泛型知識點也是Java開發(fā)崗位必問的一個話題,今天小編就給大家普及下Java泛型常見面試題,感興趣的朋友一起看看吧
    2021-06-06
  • idea指定啟動參數(shù)、環(huán)境變量的過程

    idea指定啟動參數(shù)、環(huán)境變量的過程

    這篇文章主要介紹了idea指定啟動參數(shù)、環(huán)境變量的操作過程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-07-07

最新評論