现在细化一下关于Bean的三种装配方式
1.自动装配
(1)注解解释
首先有这么几个注解:
@Component : 这个注解标识在一个类上,用来表明该类是一个组件,可以被注入Spring容器中。
@Configration: 注解在类上,表明这个类是一个配置类。
@Autowired:自动装配,当该注解注解在一个方法或者属性上的时候,缺少什么bean,就会自动注入哪个bean。
@ConponentScan:启用组件扫描。
@ContextConfigration:决定将哪个类或者xml文件作为上下文配置源。
2.基于JAVA配置装配
这种方式的基本思路是:建立好Bean之后,我们建立一个config类,在该类里面,类似于下面代码的书写方式:
@Configration
public class BeanConfig
{
@Bean
public interA A(){
return new A();
}
@Bean
public interB B(interA a)
{
return new B(a);
}
}
这样配置一个配置类之后,如果将这个配置类作为上下文获取源,那么就可以在Spring容器中注册两个Bean,id分别为A,B(即各自方法名)。当然我们可以使用@Bean(name=”xxx”)的方式单独命名某个Bean。
测试时如何使用该类作为上下文获取源?
在类上方使用注解 @ContextConfigration(classes=BeanConfig.class) 即可
3.使用XML配置文件
基本思路是:建立好所需要的bean之后,在xml配置文件中注册该Bean。而在原始bean的定义中一般不需要做额外的操作(需要注入bean除外)。
注入Bean的时候,如果不使用注解注入,使用xml配置注入的时候,需要在代码里面补充属性的set方法,否则无法注入。