坑!對象轉JSON時,Double類型屬性爲null時,默認轉爲0.0的情況

public static void main(String[] args) {
	EntityAccountInfo entityAccountInfo = new EntityAccountInfo();
	JSONObject jsonObject = JSONObject.fromObject(entityAccountInfo);
	System.out.println(jsonObject);
}

通過斷點發現,在轉換時將對象屬性中null轉成0.0了
在這裏插入圖片描述

解決方式:轉換時加入配置

public static void main(String[] args) {
	EntityAccountInfo entityAccountInfo1 = new EntityAccountInfo();
	EntityAccountInfo entityAccountInfo2 = new EntityAccountInfo();
	
	ArrayList<EntityAccountInfo> list = new ArrayList<>();
	list.add(entityAccountInfo1);
	list.add(entityAccountInfo2);
	
	JsonConfig jsonConfig = new JsonConfig();
	jsonConfig.registerDefaultValueProcessor(Double.class, new DefaultValueProcessor() {
	    @Override
	    public Object getDefaultValue(Class aClass) {
	        return null;
	    }
	});

	JSONArray jsonObject = JSONArray.fromObject(list, jsonConfig);
	
	System.out.println(jsonConfig);
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章