7.10.5 Defining bean metadata within components
Spring的组件也可以定义容器的元信息。@Bean注解可以结合@Configuration注解定义bean的元信息
@Component
public class FactoryMethodComponent{
@Bean
@Qualifier("public")
public TestBean publicInstance(){
return new TestBean("publicInstance");
}
public void doWork(){
}
}
上述代码定义了一个具有doWork()方法的组件,他也定义了一个工场方法publicInstance()。 @Bean标识了工厂方法和bean的一些其他信息,例如@Qualifier,其他一些方法级别上的注解也可以被指定如@Scope, @Lazy,和自定义的qualifier注解
@Lazy除了可以用在组件上,也可以用在@Autowired标记的注入点上