我已阅读 Spring boot doc ( http://projects.spring.io/spring-boot/docs/docs/howto.html#message.converters ) 并提到如果您提供自己的 JacksonConvertor,它将覆盖默认值。但我想它不适用于下面的代码。
我想要做的是将对象映射器的 DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES 设置为 false。
@EnableAutoConfiguration
@ComponentScan("com.hjh")
@Configuration
public class App {
@Bean
@Primary
public MappingJackson2HttpMessageConverter jacksonConvertor(){
MappingJackson2HttpMessageConverter convertor= new MappingJackson2HttpMessageConverter();
ObjectMapper mapper = new ObjectMapper();
mapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
convertor.setObjectMapper(mapper);
return convertor;
}
public static void main(String[] args) throws Exception {
ApplicationContext ctx = SpringApplication.run(App.class, args);
}
谁能指出我在这里做错了什么?因为它继续尝试从请求中绑定(bind)未知 Prop 。如果我删除未知的 Prop ,一切顺利
最佳答案
从 Spring Boot 1.2.0.RC2 FAIL_ON_UNKNOWN_PROPERTIES
开始设置为 false
默认情况下。可以通过向 application.properties
添加属性来重新打开它。 :
spring.jackson.deserialization.fail-on-unknown-properties=true
关于Spring Boot Web-在 Jackson 中将 FAIL_ON_UNKNOWN_PROPERTIES 设置为 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21262378/