Spring学习(17)--- 三种装配Bean方式比较

 

基于XML配置

基于注解配置

基于Java类配置

Bean定义

<bean   id="..." class="..." />

@Component

衍生类@Repository

@Service   @Controller

@Configuration标注类,@Bean标注提供Bean方法

Bean名称

通过 id或name指定

@Component("person")

@Bean("person")

Bean注入

<property>   或者   通过p命名空间

@Autowired   按类型注入

@Qualifier按名称注入

在方法内部编写注入代码逻辑

生命过程、Bean作用范围

init-method

destroy-method

范围 scope属性

@PostConstruct   初始化

@PreDestroy   销毁

@Scope设置作用范围

在方法内部调用初始化方法

@Scope指定范围

适合场景

Bean来自第三方,使用其它命名空间

Bean的实现类由用户自己开发

实例化Bean的逻辑比较复杂

你可能感兴趣的:(Spring学习(17)--- 三种装配Bean方式比较)