Java中JSON對象字段為null值的顯示處理方法
問題:
如何將JSON對象中字段為null值的也顯示出來
分析:
如果字段的值為null,json對象的默認設置是當字段為null時,不會將該字段和null值添加到這個json對象中;
解決方法:
1、針對jackson的json對象全局配置(舉例application.properties文件):
spring.jackson.serialization.write-null-map-values=true
針對gson的json對象全局配置(舉例application.properties文件):
spring.gson.serialize-nulls=true
當然也可以通過在需要操作的實體類上添加類注解@JsonSerialize()的方式進行局部配置;
但是全局配置會更加方便,建議使用全局配置的方法.

2、Fastjson的SerializerFeature序列化屬性
QuoteFieldNames———-輸出key時是否使用雙引號,默認為true
WriteMapNullValue——–是否輸出值為null的字段,默認為false
WriteNullNumberAsZero—-數(shù)值字段如果為null,輸出為0,而非null
WriteNullListAsEmpty—–List字段如果為null,輸出為[],而非null
WriteNullStringAsEmpty—字符類型字段如果為null,輸出為”“,而非null
WriteNullBooleanAsFalse–Boolean字段如果為null,輸出為false,而非null
舉個例子:
Map < String , Object > jsonMap = new HashMap< String , Object>();
jsonMap.put("a",1);
jsonMap.put("b","");
jsonMap.put("c",null);
jsonMap.put("d","test");
String str = JSONObject.toJSONString(jsonMap,SerializerFeature.WriteMapNullValue);
System.out.println(str);
//輸出結(jié)果:{"a":1,"b":"","c":null,"d":"test"}附:更多Json空值處理方法
fastjson和Jackson中關于空值的處理
fastjson
fastjson默認轉(zhuǎn)換中回把null值的參數(shù)去除,如果需要空值顯示,如下操作:
JSONObject.toJSONString(resultJson, SerializerFeature.WriteMapNullValue);
Jackson
Jackson中默認保留空值,如果想去除空值,可通過一下操作。
1.注解方式
@JsonInclude(Include.NON_EMPTY)
2.objectMapper
objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
總結(jié)
到此這篇關于Java中JSON對象字段為null值的顯示處理方法的文章就介紹到這了,更多相關JSON對象字段為null值顯示內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
SpringBoot啟動后自動執(zhí)行方法的各種方式對比
這篇文章主要為大家詳細介紹了SpringBoot啟動后自動執(zhí)行方法的各種方式和性能對比,文中的示例代碼講解詳細,感興趣的小伙伴可以參考一下2025-04-04
nodejs連接dubbo服務的java工程實現(xiàn)示例
這篇文章主要介紹了在項目遷移中,nodejs連接dubbo服務的java工程實現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步2022-03-03
Java優(yōu)雅實現(xiàn)判空方法(結(jié)合實際案例)
相信寫過代碼的朋友們都會進行一個非空判斷,但是各種非空判斷中,那種才是最優(yōu)雅,最高效的呢,這篇文章主要介紹了Java優(yōu)雅實現(xiàn)判空方法的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2025-06-06
Java中隊列Queue和Deque的區(qū)別與代碼實例
學過數(shù)據(jù)結(jié)構(gòu)的,一定對隊列不陌生,java也實現(xiàn)了隊列,下面這篇文章主要給大家介紹了關于Java中隊列Queue和Deque區(qū)別的相關資料,需要的朋友可以參考下2021-08-08
spring NamedContextFactory實現(xiàn)服務隔離的示例詳解
假設我們有個場景,我們需要實現(xiàn)服務之間的數(shù)據(jù)隔離、配置隔離、依賴的spring bean之間隔離,大家會有什么實現(xiàn)思路?今天給大家介紹spring-cloud-context里面有個NamedContextFactory可以達到上面的效果,需要的朋友可以參考下2024-05-05
Java中JSONObject和Map<String,?Object>的轉(zhuǎn)換方法
平時對接口時,經(jīng)常遇到json字符串和map對象之間的交互,這篇文章主要給大家介紹了關于Java中JSONObject和Map<String,?Object>的轉(zhuǎn)換方法,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2024-07-07
SpringBoot Application事件監(jiān)聽的實現(xiàn)方案
這篇文章主要介紹了SpringBoot Application事件監(jiān)聽的實現(xiàn)方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-05-05

