SpringBoot 之SpringMVC 轉換對象為JSON存在 null.


問題背景:

對象結構:

public class Result<T> {
    private int code;
    private String msg;
    private String errMsg;
    private T data;
}

后台應該返回結果:

{
    "code": 200,
    "msg": "ok",
    "errMsg": ""
}

問題沖突:

后台實際返回結果:

{
    "code": 200,
    "msg": "ok",
    "errMsg": "",
    "data": null
}

問題解決方案:

@Configuration
public class JSONConfig {
    @Bean
    public MappingJackson2HttpMessageConverter mappingJackson2HttpMessageConverter(){
        ObjectMapper objectMapper = new ObjectMapper();
        //設置過濾掉null值得屬性.
        objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
        return new MappingJackson2HttpMessageConverter(objectMapper);
    }
}

問題總結:

默認情況下,MappingJackson2HttpMessageConverter 不會過濾掉null值,需要手動設置SerializationInclusion屬性為JsonInclude.Include.NON_NULL.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM