最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

jackson 實體轉(zhuǎn)json 為NULL或者為空不參加序列化(實例講解)

 更新時間:2017年10月12日 09:17:15   作者:藍精靈lx  
下面小編就為大家?guī)硪黄猨ackson 實體轉(zhuǎn)json 為NULL或者為空不參加序列化(實例講解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

使用jackson進行序列化時,往往會遇到后臺某個實體對象的屬性為null,當序列化成json時對應(yīng)的屬性也為null;這樣在某些前端組件上應(yīng)用該json對象會報錯。(例如:echarts)

下面總結(jié)了兩種方法,解決了當屬性為null時不參與序列化:

方法一:

1.實體上使用如下注解 @JsonInclude(Include.NON_NULL)

將該標記放在屬性上,如果該屬性為NULL則不參與序列化 ;如果放在類上邊,那對這個類的全部屬性起作用。

具體取值有:

//Include.Include.ALWAYS 默認
//Include.NON_DEFAULT 屬性為默認值不序列化
//Include.NON_EMPTY 屬性為 空(“”) 或者為 NULL 都不序列化
//Include.NON_NULL 屬性為NULL 不序列化

注:使用了該注解,那么在import時需要把一下兩個類引入到源文件中

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;

2.代碼上使用如下方法:

ObjectMapper mapper = new ObjectMapper();
mapper.setSerializationInclusion(Include.NON_NULL);
User user = new User(1,"",null);
String outJson = mapper.writeValueAsString(user);
System.out.println(outJson);

通過該方法對mapper對象進行設(shè)置,所有序列化的對象都將按改規(guī)則進行系列化 。

具體取值有:

//Include.Include.ALWAYS 默認
//Include.NON_DEFAULT 屬性為默認值不序列化
//Include.NON_EMPTY 屬性為 空(“”) 或者為 NULL 都不序列化
//Include.NON_NULL 屬性為NULL 不序列化

注意:只對VO起作用;對Map List不起作用

ObjectMapper mapper = new ObjectMapper();
mapper.setSerializationInclusion(Include.NON_NULL);
 
Map map = new HashMap();
map.put("a", null);
map.put("b", "b");
 
String ret_val = mapper.writeValueAsString(map);
System.err.println(ret_val);
Map m = mapper.readValue(ret_val, Map.class);
System.err.println(m.get("a") + "|" + m.get("b"));
輸出:
{"b":"b","a":null}
null|b
VO vo = new VO();
vo.setA(null);
vo.setB("b");
     
String ret_val1 = mapper.writeValueAsString(vo);
System.err.println(ret_val1);
VO v = mapper.readValue(ret_val1, VO.class);
System.err.println(v.getA() + "|" + v.getB());<br>
輸出
{"b":"b"}
|b

方法二:

在實體類前,增加@JsonSerialize(include=JsonSerialize.Inclusion.NON_NULL) 注解

JSON原來經(jīng)過JACKSON轉(zhuǎn)換以后為{"name":"name","sex":null}

加入注解后,結(jié)果為{"name":"name"}

sex節(jié)點被去掉了

以上這篇jackson 實體轉(zhuǎn)json 為NULL或者為空不參加序列化(實例講解)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 基于JWT實現(xiàn)SSO單點登錄流程圖解

    基于JWT實現(xiàn)SSO單點登錄流程圖解

    這篇文章主要介紹了基于JWT實現(xiàn)SSO單點登錄流程圖解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-07-07
  • Java使用設(shè)計模式中的工廠方法模式實例解析

    Java使用設(shè)計模式中的工廠方法模式實例解析

    當系統(tǒng)準備為用戶提供某個類的子類的實例,又不想讓用戶代碼和該子類形成耦合時,就可以使用工廠方法模式來設(shè)計系統(tǒng).工廠方法模式的關(guān)鍵是在一個接口或抽象類中定義一個抽象方法,下面我們會具體介紹Java使用設(shè)計模式中的工廠方法模式實例解析.
    2016-05-05
  • 詳解Java線程池如何統(tǒng)計線程空閑時間

    詳解Java線程池如何統(tǒng)計線程空閑時間

    這篇文章主要和大家分享一個面試題:Java線程池是怎么統(tǒng)計線程空閑時間?文中的示例代碼講解詳細,對我們掌握Java有一定幫助,需要的可以參考一下
    2022-11-11
  • Springboot利于第三方服務(wù)進行ip定位獲取省份城市

    Springboot利于第三方服務(wù)進行ip定位獲取省份城市

    本文主要介紹了Springboot利于第三方服務(wù)進行ip定位獲取省份城市,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-07-07
  • Java多線程編程之ThreadLocal線程范圍內(nèi)的共享變量

    Java多線程編程之ThreadLocal線程范圍內(nèi)的共享變量

    這篇文章主要介紹了Java多線程編程之ThreadLocal線程范圍內(nèi)的共享變量,本文講解了ThreadLocal的作用和目的、ThreadLocal的應(yīng)用場景、ThreadLocal的使用實例等,需要的朋友可以參考下
    2015-05-05
  • 詳解在java中進行日期時間比較的4種方法

    詳解在java中進行日期時間比較的4種方法

    這篇文章主要介紹了詳解在java中進行日期時間比較的4種方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-07-07
  • Java實現(xiàn)英文猜詞游戲的示例代碼

    Java實現(xiàn)英文猜詞游戲的示例代碼

    這篇文章主要介紹了如何用Java編寫一個英文猜詞游戲,可以用來背英語單詞。文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下
    2022-02-02
  • mybatis 中 foreach collection的用法小結(jié)(三種)

    mybatis 中 foreach collection的用法小結(jié)(三種)

    這篇文章主要介紹了mybatis 中 foreach collection的用法小結(jié)(三種),需要的朋友可以參考下
    2017-10-10
  • SpringBoot中FailureAnalyzer的使用詳解

    SpringBoot中FailureAnalyzer的使用詳解

    這篇文章主要介紹了SpringBoot中FailureAnalyzer的使用詳解,FailureAnalyzer攔截啟動時異常,將異常轉(zhuǎn)換成更加易讀的信息并包裝成org.springframework.boot.diagnostics.FailureAnalysis對象,監(jiān)控應(yīng)用啟動過程,需要的朋友可以參考下
    2023-12-12
  • MybatisX-Generator自動代碼生成插件教程

    MybatisX-Generator自動代碼生成插件教程

    這篇文章主要介紹了MybatisX-Generator自動代碼生成插件教程,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-04-04

最新評論

贞丰县| 松桃| 阿勒泰市| 宁阳县| 临泉县| 南昌县| 江永县| 大化| 利辛县| 萝北县| 奉新县| 濉溪县| 广州市| 贞丰县| 平舆县| 泾源县| 明星| 固原市| 中山市| 芦山县| 瑞昌市| 社会| 松桃| 石首市| 南宁市| 武穴市| 桂平市| 延庆县| 宾阳县| 容城县| 祁阳县| 宁波市| 丹棱县| 土默特左旗| 乌兰县| 德昌县| 娱乐| 那曲县| 东台市| 秭归县| 平塘县|