大家在日常測試的時候,經常需要輸出一個dto的具體key-value,如下圖,當我們直接輸出user對象時,發現輸出的是隻是對象的引用並沒有輸出我們想要的key-value值。
這裏大家可能都知道使用fastjson轉換成string輸出,當然首先是引入fastjson的jar包
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.57</version>
</dependency>
然後使用JSONObject.toJSONString(user)來將我們需要輸出的對象轉換成string輸出,這時我們可以看到如下現象,當有屬性值爲null的時候,這邊是輸出不了的。
解決方法:
使用api
JSONObject.toJSONString(user,SerializerFeature.WriteMapNullValue)
增加參數SerializerFeature.WriteMapNullValue表示我們在轉換成string的時候會將null的屬性也輸出出來,如下效果。