(1)自动装配

开启ComponentScan(自动扫描),  

通过在类使用注解@Component(默认bean id为类名第一个字符小写),

使用@Autowired实现属性,构造函数,成员函数的自动装配.

@Qulifer注解可以明确指定bean的id解决歧义性.

 

(2)javaconfig装配

@Configuration注解表明为配置类。

@Bean显示声明的bean id默认为方法名第一个字符小写.可以通过name属性修改id名称.

创建bean的方式非常灵活

@Spring 会拦截所有标注有@Bean的方法调用,确保返回方法创建的bean, 不会每次都进行实际的调用。 

 更安全,易于重构代码

 

(3)xml装配

Bean的默认id为全限定类名。