2015-04-22 11:26:44
今天学习的是一个标签
1 <context:component-scan base-package="com.tarena.web"/>
1 <context:component-scan base-package="com.tarena.web" Use-default-filter="true"/>
feature:Spring可以自动扫描base-package下面的.java文件,如果扫描到被 泛化层@Component, 业务层@Service, 展示层@Controller, 存储层@Repository注解的Java类文件,就将它们标识为Spring Bean对象管理起来.
注意:这里有一个需要注意的,<context:component-scan>标签有一个默认的属性Use-default-filter="true",它的意思:默认扫描base-package包下面所有@component的子注解,所有标识有@的java类文件,都给注册成为Bean对象,那么扫描的粒度太大了.
假如我们只需要扫描标识有@Controller的Java类文件,那么我们怎么办?
1 <context:component-scan base-package="com.tarena.web.controller"> 2 <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/> 3 </context:component-scan>
注意变化的地方两处:base-package;<context:include-filter>;