spring boot 修改 jackson string的null爲空字符串

最近遇到一個spring boot用@Responsebody返回string都是null的問題,百度了一下,問題回答的都不夠簡潔,因此本身研究了一下解決方案spring

一、自定義objectmapperjson

/**
 * Created by hpx on 2018/1/31.
 */
public class JsonObjectMapper extends ObjectMapper {

    public JsonObjectMapper(){
        super();
        this.getSerializerProvider().setNullValueSerializer(new JsonSerializer<Object>() {
            @Override
            public void serialize(Object o, JsonGenerator jsonGenerator, SerializerProvider serializerProvider) throws IOException, JsonProcessingException {
                jsonGenerator.writeString(StringUtils.EMPTY);
            }
        });
    }
}

二、修改MappingJackson2HttpMessageConverter的默認objectMapperapp

@Bean
public MappingJackson2HttpMessageConverter objectMapper(){
   MappingJackson2HttpMessageConverter converter=new MappingJackson2HttpMessageConverter();
   converter.setObjectMapper(new JsonObjectMapper());
   return converter;
}
相關文章
相關標籤/搜索