@Bean用在方法上
@Bean 注解会告诉Spring该方法会返回一个对象。该对象要注册为Spring应用上下文中的bean,方法中包含了最终产生bean实例的逻辑。如下代码:
@Bean
public CompactDisc sgtPeppers(){
return new CompactDisc();
}
默认情况下,bean的ID与带有@Bean的方法名一样的,上面的方法所产生的bean的名字将会是:sgtPeppers。如果想设置成其他名字可以重命名该方法,也可以设置name属性;如:
@Bean(name = "lonelyHeartsClubBand")
public CompactDisc sgtPeppers(){
return new CompactDisc();
}
Spring会拦截所有对该方法的调用,并确保直接返回方法所创建的bean,而不是每次都对其进行实际的调用。因为Spring默认创建的bean都是单例的。
@Bean 也支持init-method和destory-method。
@Bean(name="store",initMethod="init",destoryMethod="destory")这两个方法应该在实现类里面
可以参考该博客:https://blog.youkuaiyun.com/xhf852963/article/details/78079329