@Bean注解的应用

Spring中,@Bean注解是咱们经常会用到的一个注解.

其通常会利用在一些配置类(被@Configuration注解标记的类)中,用于形容具备返回值的办法,零碎应用这些办法时,底层调用这些办法时,会通过反射的形式,以低耦合的模式去获取对象,并基于作用域(若是单实例会存入bean池)将对象进行存储与利用.

利用场景:
第三方资源的整合及配置中

除了广泛应用于第三正资源的整合与配置以外,@Bean还能够用于形容办法的返回值是咱们本人编写的类(但不举荐),但用于这种状况是须要留神:

spring容器中由@Bean注解形容的办法的返回值,其名字默认时办法名

而咱们编写的类上写上非凡的注解(如:@Component/@Controller等)形容的类交由spring容器所创立的bean对象,名字默认为首字母小写的类名

留神:
而这两个若是指向的是同一个类,很可能会产生bean名字的反复,就会报错,肯定要留神!

应用形式:
当@Bean用于第三方资源的整合及配置中时,例如:整合mybatis框架,在mybatis官网中,对于其整合到spring框架中有所提醒,如下图所示:

其提供了两种办法,一种是spring整合mybatis的xml文件中增加<bean>标签的办法;另一种就是通过@Bean注解形容的办法.二者都可应用.