[英]How do I register my JsonSerializer on Spring
從以下問題中獲取答案: https : NullSerializer
我想將NullSerializer
添加到自動配置的ObjectMapper
。 Spring Boot文檔:
任何類型為com.fasterxml.jackson.databind.Module的bean都會自動注冊到自動配置的Jackson2ObjectMapperBuilder中,並應用於它創建的任何ObjectMapper實例。 當您向應用程序中添加新功能時,這提供了一種用於貢獻自定義模塊的全局機制。
所以這就是我正在嘗試的方式:
@Configuration
public class JacksonConfig {
@Bean
public Module customSerializer() {
SimpleModule module = new SimpleModule();
module.addSerializer(new NullSerializer());
return module;
}
}
但我得到:
NullSerializer does not define valid handledType() -- must either register with method that takes type argument or make serializer extend com.fasterxml.jackson.databind.ser.std.StdSerializer
handleType()方法的Javadoc說:
訪問此序列化程序可以處理的對象類型的方法。 請注意,此信息不能保證准確無誤-可能是更通用的(超級類型),但不應錯誤(返回不相關的類型)。 默認實現將返回null,這實質上意味着與返回Object.class相同。 也就是說,關於處理類型一無所知。
使用Spring Boot 2.0.5.RELEASE
我認為問題在於您使用的是原始類型。 您需要給它上課。
module.addSerializer(Object.class, new NullSerializer<>());
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.