根据项目需要,自定义了RequestMappingHandlerMapping,实现其中的getCustomMethodCondition方法,以实现自定义的请求路由。
此时,Controller中会出现@RequestMapping内容完全相同的多个方法。
自定义的RequestMappingHandlerMapping的子类通过注册到Spring容器
而开启了的mvc:annotation-driven/,会去注册默认的RequestMappingHandlerMapping,导致上面说得“@RequestMapping内容完全相同的多个方法”冲突,无法正常启动项目。
由于有许多必要的bean是由mvc:annotation-driven/自动注册的,不能不用。
所以希望找到在使用mvc:annotation-driven/的情况下,不去注册默认的RequestMappingHandlerMapping的方法!
https://blog.csdn.net/qq_34120041/article/details/53606421
如果是ssm项目的话,我终于找到了一个解决方案,
参考 https://blog.csdn.net/lucky_ly/article/details/79505202
就是去除springmvc的xml配置,如果还使用非springmvc的xml配置(mybatis、redis等),则不适用文中的非SpringMVC上下文配置
这样,springmvc的配置就和springboot中一样使用java类来配置,我已经配置测试有效了