Java 重写Spring控制器映射
我有这样一个问题,我从事的项目中的某些部分是从JAR文件中已有的遗留代码中提取的。已经有一些从这些JAR文件导入的Spring控制器。我想通过扩展这些类和创建/编写新方法来覆盖导入的控制器中的映射。不幸的是,我不能创建新的映射,因为我不知道有多少地方出现了旧的映射,整个系统是不可能的。由于我想在同一映射上添加一些新功能,我尝试排除旧(导入的)控制器,并排除正在使用以下方法导入旧控制器的配置文件:Java 重写Spring控制器映射,java,spring,spring-mvc,Java,Spring,Spring Mvc,我有这样一个问题,我从事的项目中的某些部分是从JAR文件中已有的遗留代码中提取的。已经有一些从这些JAR文件导入的Spring控制器。我想通过扩展这些类和创建/编写新方法来覆盖导入的控制器中的映射。不幸的是,我不能创建新的映射,因为我不知道有多少地方出现了旧的映射,整个系统是不可能的。由于我想在同一映射上添加一些新功能,我尝试排除旧(导入的)控制器,并排除正在使用以下方法导入旧控制器的配置文件: @ComponentScan.Filter(type = FilterType.REGEX) Sp
@ComponentScan.Filter(type = FilterType.REGEX)
Spring带来了重复映射的问题,不允许我正确部署应用程序
是否有任何选项将控制器从应用程序中排除,或检查控制器bean注入应用程序的位置并覆盖它?您可以从Spring组件扫描中排除类或包,如下所示
@Configuration
@ComponentScan(
excludeFilters = {
@ComponentScan.Filter(type = FilterType.REGEX, pattern = "org.aaa.bbb.*"),
@ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, value = MyClassToExclude.class) })
通过这种方式,您可以排除您的遗留类。我还不理解您的问题。它解决了问题。我还需要承认,如果你正在制作一些新的控制器来覆盖映射,你不应该扩展你想要覆盖的那个。