@Component 类级注解 表明该类是一个组件类,将它识别为一个bean,需要通过开启组建扫描才能发现。
对于@Component注解的bean的名字,默认是驼峰,可以是使用@Component("xxx")指定名称
可以专门创建一个配置类,该类有注解 @Configuration 引导类启动会先去加载配置类;@ComponentScan 开启组件扫描,默认扫描与配置类相同的包,查找带有@Component的类
@ComponentScan("xxx")value属性指定包的名称,多个包可以用@ComponentScan(basepackages={"xxx","xxx"})。但是字符串没有编译器检查,@ComponentScan(basepackages={aaa.class,bbb.class}),aaa与bbb两个类所在的包会作为被扫描的包。
将bean注入 可以在属性或者方法上使用@Autowired,如果是方法自动传入参数
@Configuration注解表明这个类是一个配置类,该类应该包含Spring应用上下文中如何创建bean的细节。
@Bean 告诉Spring,方法返回的对象要注册为bean,方法体中中可以包含产生bean的任意逻辑
默认bean的ID与方法名相同,@Bean(name="xxxx")指定名字
默认情况下bean都是单例,因此每当调用@Bean 注解的方法时,Spring会进行拦截,并传给他一个已存在的bean。