关于SpringBoot2.X中put方法与delete方法不生效
经过部分源码阅读 : WebMvcAutoConfiguration.java
@ConditionalOnMissingBean(WebMvcConfigurationSupport.class)
public class WebMvcAutoConfiguration {
@Bean
@ConditionalOnMissingBean(HiddenHttpMethodFilter.class)
@ConditionalOnProperty(prefix = "spring.mvc.hiddenmethod.filter", name = "enabled", matchIfMissing = false)
public OrderedHiddenHttpMethodFilter hiddenHttpMethodFilter() {
return new OrderedHiddenHttpMethodFilter();
}
}
很多人说在配置文件中配置 : spring.mvc.hiddenmethod.filter.enabled = true 即可 ,可是我的即便配置后也不能实现 到 @PutMapping("/emp")方法中 , 反而一直访问 @PostMapping("/emp") 于是翻阅源码发现 , 一句配置 @ConditionalOnMissingBean(WebMvcConfigurationSupport.class)
该类在没有配置 WebMvcConfigurationSupport.class 的时候才生效 , 刚好我使用的 config 刚好继承了 WebMvcConfigurationSupport 所以不能成功使用