我向我的客户提供了一个高度可定制的应用程序,它完全由自己完成。但是如果我的客户想要覆盖任何控制器,我想用他们的实现替换我的实现。然而,只是覆盖控制器会导致映射的模糊定义。弹簧覆盖控制器
我一直在使用组件扫描来加载bean。
的潜在解决方案来到我的脑海里有:
- 使用组件扫描仪与自定义过滤器排除? (这似乎不是那么容易)
- 使用xxxxPostProcessor删除一些bean? (如何?)
任何帮助吗?
我向我的客户提供了一个高度可定制的应用程序,它完全由自己完成。但是如果我的客户想要覆盖任何控制器,我想用他们的实现替换我的实现。然而,只是覆盖控制器会导致映射的模糊定义。弹簧覆盖控制器
我一直在使用组件扫描来加载bean。
的潜在解决方案来到我的脑海里有:
任何帮助吗?
我按照下列步骤操作:
@Devoted
ImportBeanDefinitionRegistrar
。迭代已经注册的bean定义来找出`@Devoted @ Controller's并删除它们。根据要求我会提供实施细节。
如果我得到你的问题正确,
您可以通过更改URL到特定的实现名称有所不同,实施
说电信接口和AirtelImpl和RelianceImpl是控制器,然后
您的请求映射
@RequestMapping(value= "/airtel/doBilling")
@RequestMapping(value= "/reliance/doBilling")
这样,执行流程会有所不同。
这确实取决于他们想要做什么,但我会为他们提供在服务级别添加/交换逻辑而不是更改控制器的功能。 – soulcheck