Spring组件扫描 context:component-scan

context:component-scan节点的两个属性:
​ ​ base-package属性告诉spring要扫描的包
​ use-default-filters=”false”表示不要使用默认的过滤器,此处的默认过滤器,会扫描包含Component,Service, Repository, Controller注解修饰的类,默认为true时会对base-package包或者子包下的所有的进行java类进行扫描,并把匹配的java类注册成bean。

​ context:component-scan节点允许有两个子节点<context:include-filter><context:exclude-filter>。filter标签有两个属性,type和表达式说明expression

​ 如果配置了<context:component-scan>那么<context:annotation-config/>标签就可以不用再xml中配置了,因为前者包含了后者。

@Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。
@Controller标注web控制器,
@Service标注Servicec层的服务,
@Respository标注DAO层的数据访问。

​ Spring中用@Component、@Repository、@Service和 @Controller等标注的默认Bean名称会是小写开头的非限定类名,也可以自定义bean名称
​ 例如Chinese实例化为chinese,American实例化为american,如果需要自己改名字则:@Service(“你自己改的bean名”)。

志哥 wechat
扫描上方,可以关注我的微信公众号哦。
能加个鸡腿吗?