Java 指定實體中成員變量不序列化返回前端

業務場景:數據庫查詢結果返回實體一共有10個屬性值,但是隻想把實體中的7個成員變量返回給前端,所以就需要操作忽略(隱藏)掉另外的3個成員變量

1.@JsonIgnore註解

  • 作用:在json序列化時將實體中的一些屬性忽略掉,標記在屬性或者方法上,返回的Json數據就不包含被@JsonIgnore標註的屬性。

2.代碼示例

  • 以下實體中的bzrsList(編制人員列表)屬性是業務屬性(數據庫查詢得到),需要經過處理後把得到的值賦給bzrsTotal(編制人員總數),然後將bzrsTotal(編制人員總數)返回給前端;
public class Demo implements Serializable {
    // 單位id
    private String id;
    // 單位名稱
    private String deptName;
    // 單位性質
    private String deptClassValue;
    // 編制人員列表
    private String bzrsList;
    // 編制人員總數
    private int bzrsTotal;
    // 使用面積正常人數
    private String zcrsTotal;
    // 使用面積超標人數
    private String cbrsTotal;
    // 正常使用面積總數
    private String zcmjTotal;
    // 超標使用面積總數
    private String cbmjTotal;
}
  • 不忽略bzrsList(編制人員列表)返回結果:
    在這裏插入圖片描述

3. 解決

  • 使用 @JsonIgnore標註需要隱藏的成員變量
 	//...以上代碼省略

    // 編制人員列表
    @JsonIgnore
    private String bzrsList;

     //...以下代碼省略
  • 運行結果bzrsList屬性不再返回:
    在這裏插入圖片描述
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章