如何在applicationContext中从Spring中排除一个类?

2024-01-08

这里我们只想从某些类路径中排除一个类,例如

com.abc.projectA.service.orderService.sectionA.orderService.class

但是,还有另一个具有相同名称但位于不同类路径中的类

com.abc.projectA.service.orderService.sectionB.orderService.class

因此仅按类名过滤是行不通的。

但我尝试了以下方法:

<context:component-scan base-package="com.abc">
    <!--other filters-->
    <!--.......-->
    <context:exclude-filter expression="projectA\.service\.orderService\.sectionA\.orderService" type="regex" />
</context:component-scan>

这不起作用。所以我打赌<context:exclude-filter>仅在包级别有效,但不适用于特定类别?如果是这样,如何从 bean 注入中排除一个类,以便我们可以选择类以使用相同的类名进行连接?

提前致谢。


不,排除应该有效,您遇到的问题可能是您假设正则表达式中的路径将在基础包前面加上,这是不正确的..所以只需指定完整的包

<context:component-scan base-package="com.abc">
    <!--other filters-->
    <!--.......-->
    <context:exclude-filter expression="com\.abc\.projectA\.service\.orderService\.sectionA\.orderService" type="regex" />
</context:component-scan>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在applicationContext中从Spring中排除一个类? 的相关文章

随机推荐