spring的@ComponentScan註解

1.@ComponentScan註解做用
@ComponentScan用於類或接口上主要是指定掃描路徑,spring會把指定路徑下帶有指定註解的類自動裝配到bean容器裏。會被自動裝配的註解包括@Controller、@Service、@Component、@Repository等等。其做用等同於<context:component-scan base-package="com.maple.learn" />配置正則表達式

2.@ComponentScan使用
經常使用屬性以下:spring

basePackages、value:指定掃描路徑,若是爲空則以@ComponentScan註解的類所在的包爲基本的掃描路徑
basePackageClasses:指定具體掃描的類
includeFilters:指定知足Filter條件的類
excludeFilters:指定排除Filter條件的類
includeFilters和excludeFilters 的FilterType可選:ANNOTATION=註解類型 默認、ASSIGNABLE_TYPE(指定固定類)、ASPECTJ(ASPECTJ類型)、REGEX(正則表達式)、CUSTOM(自定義類型),自定義的Filter須要實現TypeFilter接口
@ComponentScan的常見的配置以下:component

@ComponentScan(value="com.maple.learn",
   excludeFilters = {@ComponentScan.Filter(type = FilterType.CUSTOM, classes = TypeExcludeFilter.class)},
   includeFilters = {@ComponentScan.Filter(type=FilterType.ANNOTATION,classes={Controller.class})}
        )
public class SampleClass{
   ……接口

相關文章
相關標籤/搜索