6.10 类路径扫描和被管理的组件
本章中的大多数示例都使用XML来指定在Spring容器中生成每个BeanDefinition的配置元数据。上一节(第6.9节“基于注解的容器配置”)阐述了如何通过源码级别的注解来提供大量配置元数据。实际上,在这些示例中,虽然“基本”bean定义在XML文件中明确定义,但是,注解仅仅驱动依赖注入。 本节介绍一种通过扫描类路径来隐式检测候选组件的选项。 候选组件是与筛选条件匹配的类,并且具有使用容器注册的相应的bean的定义。这移除了使用XML执行bean注册的需要; 与之代替的是,您可以使用注解(例如@Component)、AspectJ类型表达式或您自己的自定义筛选条件来选择哪些类将使用容器注册的bean定义。
从Spring 3.0开始,Spring JavaConfig项目提供的许多功能都是Spring框架核心的一部分。 这允许您使用Java而不是使用传统的XML文件来定义bean。 有关如何使用这些新功能的示例,请查看@Configuration,@ Both,@ Import和@DependsOn注解。