1、Bean扫描有两种方式,扫描范围为 当前包及子包
1.1 context标签
<context:component-scan base-package = "包路径" />
1.2 注解
@ComponentScan(basePackages = "包路径")
注意:当前SpringBoot项目中没有看到上述两种配置,因为启动类SpringBootApplication上的@SpringBootApplication注解。该注解为组合注解,包含三个注解,其中就有@ComponentScan
@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan
2、Bean注册 有四种常用注解,其中@Component是声明bean的基础注解,其余三个为@Component的衍生注解
//不属于以下三类时,用此注解
@Component
//标注在控制器类上
@Controller
//标注在业务类上
@Service
//标注在数据访问类上,(由于与Mybatis整合,用得少)
@Repository
2.1 如果要注册的类来自于第三方(非自定义),是无法使用上述4个注解的,只能使用@Bean和@Import