spring 排除指定的类或者包扫描
<!-- 排除Controller注解的扫描 -->
<context:component-scan base-package="exampleBean">
<context:exclude-filter type="annotation"
expression="org.springframework.stereotype.Controller" />
</context:component-scan> <!-- 排除扫描符合正则表达式的类,此处排除com.wx.comm.util包下的所有类 -->
<context:component-scan base-package="exampleBean">
<context:exclude-filter type="regex"
expression="com.wx.comm.util.*" />
</context:component-scan> <!-- 排除指定包exampleBean下的CommFF类的扫描 -->
<context:component-scan base-package="exampleBean">
<context:exclude-filter type="assignable"
expression="exampleBean.CommFF" />
</context:component-scan>
参考:https://docs.spring.io/spring/docs/4.3.12.RELEASE/spring-framework-reference/htmlsingle/
7.10.4 Using filters to customize scanning
By default, classes annotated with @Component
, @Repository
, @Service
, @Controller
, or a custom annotation that itself is annotated with @Component
are the only detected candidate components. However, you can modify and extend this behavior simply by applying custom filters. Add them as includeFilters or excludeFiltersparameters of the @ComponentScan
annotation (or as include-filter or exclude-filter sub-elements of the component-scan
element). Each filter element requires the type
and expression
attributes. The following table describes the filtering options.
Filter Type | Example Expression | Description |
---|---|---|
annotation (default) |
|
An annotation to be present at the type level in target components. |
assignable |
|
A class (or interface) that the target components are assignable to (extend/implement). |
aspectj |
|
An AspectJ type expression to be matched by the target components. |
regex |
|
A regex expression to be matched by the target components class names. |
custom |
|
A custom implementation of the |
The following example shows the configuration ignoring all @Repository
annotations and using "stub" repositories instead.
@Configuration
@ComponentScan(basePackages = "org.example",
includeFilters = @Filter(type = FilterType.REGEX, pattern = ".*Stub.*Repository"),
excludeFilters = @Filter(Repository.class))
public class AppConfig {
...
}
最新文章
- SqlServer2008安装时提示重启计算机失败 解决办法
- 复旦大学2015--2016学年第一学期(15级)高等代数I期末考试第八大题解答
- SpringJMS解析2-JmsTemplate
- ECMAScript中关于如何获取this的定义
- Python 爬虫学习 urllib2
- iOS 获取文件的目录路径的几种方法 [转]
- SQL语句汇总(终篇)—— 表联接与联接查询
- 关于解决方案和web文件夹放在同一目录路径错误的问题
- 026 hibernate操作树形结构
- dotnet core如何编译exe
- ruby中to_s和to_str、to_i和to_int、to_a和to_ary、to_h和to_hash的解释说明
- 20175204 张湲祯 2018-2019-2《Java程序设计》第四周学习总结
- CUDA相关问题
- 小程序longpress的bug及其解决
- js实现oss文件上传及一些问题
- leetcode — substring-with-concatenation-of-all-words
- leetcode231
- 结对作业(1.0版)(bug1已修复)
- Django和Ajax
- C# 学习笔记(一) Winform利用Assembly反射动态创建窗体