欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Jackson忽略字段實(shí)現(xiàn)對(duì)字段進(jìn)行序列化和反序列化

 更新時(shí)間:2023年10月17日 14:12:48   作者:qq_35987023  
在使用?Jackson?進(jìn)行序列化和反序列化時(shí),有時(shí)候需要對(duì)某些字段進(jìn)行過(guò)濾,以便在?JSON?數(shù)據(jù)中不包含某些敏感信息,下面就一起來(lái)了解一下Jackson忽略字段實(shí)現(xiàn)對(duì)字段進(jìn)行序列化和反序

在使用 Jackson 進(jìn)行序列化和反序列化時(shí),有時(shí)候需要對(duì)某些字段進(jìn)行過(guò)濾,以便在 JSON 數(shù)據(jù)中不包含某些敏感信息

@JsonInclude

可以標(biāo)記在字段上

@Target({ElementType.ANNOTATION_TYPE, ElementType.METHOD, ElementType.CONSTRUCTOR, ElementType.FIELD})
@Retention(RetentionPolicy.RUNTIME)
@JacksonAnnotation
public @interface JsonIgnore {
    boolean value() default true;
}

例如,以下代碼示例使用 @JsonIgnore 注解來(lái)隱藏敏感的密碼字段:

@Data
public class User {
    private Integer id;
    private String username;

    @JsonIgnore // 隱藏了password字段
    private String password;
}

@JsonIgnoreProperties

可以標(biāo)記在類上

@Target({ElementType.ANNOTATION_TYPE, ElementType.TYPE, ElementType.METHOD, ElementType.CONSTRUCTOR, ElementType.FIELD})
@Retention(RetentionPolicy.RUNTIME)
@JacksonAnnotation
public @interface JsonIgnoreProperties {
    String[] value() default {};
}
@Data
@JsonIgnoreProperties({"username","password"})
public class User {
    private Integer id;
    private String username;

    private String password;
}

@JsonIgnoreType

// 被該注解修飾的類,
// 作為其他類的成員變量時(shí),不論是序列化還是反序列化都被忽略了;
@JsonIgnoreType
 
@JsonIgnoreType
public class TestChild {
    private int value;
}
 
// Test類進(jìn)行序列化和反序列時(shí),
// 字段child被忽略
public class Test {
    private String name;
    private TestChild child;
}

JsonAutoDetect

// 根據(jù)訪問(wèn)權(quán)限修飾符,對(duì)字段是否進(jìn)行序列化和反序列化
@JsonAutoDetect
 
// 只對(duì)訪問(wèn)權(quán)限修飾符為public的字段進(jìn)行序列化和反序列化
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.PUBLIC_ONLY)
public class College {
    private String name;
    private String city;
    protected int age;
}
// fieldVisibility屬性有以下值可選
ANY // 所有
NON_PRIVATE // private之外的
PROTECTED_AND_PUBLIC // protected和public的(此時(shí)privte和默認(rèn)的package access時(shí)不能被自動(dòng)識(shí)別的)
PUBLIC_ONLY // public的
NONE // 禁止自動(dòng)識(shí)別
DEFAULT // 默認(rèn)的,用于繼承父類的自動(dòng)識(shí)別的范圍

參考鏈接

https://blog.csdn.net/weixin_45427648/article/details/129645380

到此這篇關(guān)于Jackson忽略字段實(shí)現(xiàn)對(duì)字段進(jìn)行序列化和反序列化的文章就介紹到這了,更多相關(guān)Jackson忽略字段內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring Boot 中該如何防御計(jì)時(shí)攻擊

    Spring Boot 中該如何防御計(jì)時(shí)攻擊

    這篇文章主要介紹了Spring Boot 中該如何防御計(jì)時(shí)攻擊,幫助大家更好的使用spring boot框架,感興趣的朋友可以了解下
    2020-09-09
  • Java中ShardingSphere分庫(kù)分表實(shí)戰(zhàn)

    Java中ShardingSphere分庫(kù)分表實(shí)戰(zhàn)

    我們做項(xiàng)目的時(shí)候,數(shù)據(jù)量比較大,單表千萬(wàn)級(jí)別的,需要分庫(kù)分表,本文主要介紹了Java中ShardingSphere分庫(kù)分表實(shí)戰(zhàn),感興趣的可以了解一下
    2021-09-09
  • Java8中Optional操作的實(shí)際應(yīng)用

    Java8中Optional操作的實(shí)際應(yīng)用

    Optional類是一個(gè)可以為null的容器對(duì)象,如果值存在則isPresent()方法會(huì)返回true,調(diào)用get()方法會(huì)返回該對(duì)象,下面這篇文章主要給大家介紹了關(guān)于Java8中Optional操作實(shí)際應(yīng)用的相關(guān)資料,需要的朋友可以參考下
    2022-02-02
  • Spring Boot 和 Spring 到底有啥區(qū)別你知道嗎

    Spring Boot 和 Spring 到底有啥區(qū)別你知道嗎

    Spring Boot框架的核心就是自動(dòng)配置,只要存在相應(yīng)的jar包,Spring就幫我們自動(dòng)配置。接下來(lái)通過(guò)本文給大家介紹Spring與Spring boot的區(qū)別介紹,非常不錯(cuò),需要的朋友參考下吧
    2021-08-08
  • java的url方式、本地方式獲取json文件內(nèi)容

    java的url方式、本地方式獲取json文件內(nèi)容

    這篇文章給大家分享了java的url方式、本地方式獲取json文件內(nèi)容的實(shí)例代碼,有需要的朋友參考學(xué)習(xí)下。
    2018-07-07
  • java輸入時(shí)如何通過(guò)回車(enter)來(lái)結(jié)束輸入

    java輸入時(shí)如何通過(guò)回車(enter)來(lái)結(jié)束輸入

    這篇文章主要介紹了java輸入時(shí)如何通過(guò)回車(enter)來(lái)結(jié)束輸入,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • Gateway實(shí)現(xiàn)限流的一些常見(jiàn)方式

    Gateway實(shí)現(xiàn)限流的一些常見(jiàn)方式

    文章介紹了如何在SpringCloudGateway中實(shí)現(xiàn)限流,包括基于請(qǐng)求次數(shù)、令牌桶算法、IP地址和時(shí)間窗口等多種限流策略,通過(guò)配置RequestRateLimiter過(guò)濾器和KeyResolver,可以靈活地控制不同來(lái)源的請(qǐng)求頻率,確保系統(tǒng)穩(wěn)定性和可用性,感興趣的朋友一起看看吧
    2025-02-02
  • MyBatis實(shí)現(xiàn)三級(jí)樹(shù)查詢的示例代碼

    MyBatis實(shí)現(xiàn)三級(jí)樹(shù)查詢的示例代碼

    在實(shí)際項(xiàng)目開(kāi)發(fā)中,樹(shù)形結(jié)構(gòu)的數(shù)據(jù)查詢是一個(gè)非常常見(jiàn)的需求,比如組織架構(gòu)、菜單管理、地區(qū)選擇等場(chǎng)景都需要處理樹(shù)形數(shù)據(jù),本文將詳細(xì)講解如何使用MyBatis實(shí)現(xiàn)三級(jí)樹(shù)形數(shù)據(jù)的查詢,需要的朋友可以參考下
    2024-12-12
  • 詳解Java中如何正確書(shū)寫(xiě)單例模式

    詳解Java中如何正確書(shū)寫(xiě)單例模式

    一般單例都是五種寫(xiě)法:懶漢,餓漢,雙重校驗(yàn)鎖,靜態(tài)內(nèi)部類和枚舉。本文整理了幾種常見(jiàn)的單例寫(xiě)法,下面跟著小編一起來(lái)看下吧
    2017-01-01
  • 簡(jiǎn)單通用JDBC輔助類封裝(實(shí)例)

    簡(jiǎn)單通用JDBC輔助類封裝(實(shí)例)

    下面小編就為大家?guī)?lái)一篇簡(jiǎn)單通用JDBC輔助類封裝(實(shí)例)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-07-07

最新評(píng)論