Spring

一.使用ApplicationContext获取bean与使用bean工厂获取bean有什么区别?

答: ApplicatonContext在初始化时如果bean的scope是singleton时就已经创建了bean对象。bean工厂则是在调用getBean方法时才创建的bean对象(有点像延迟加载),一般都是使用ApplicationContext来创建,如果内存非常小,则选用bean工厂来创建。

二.Bean的生命周期(通过ClassPathXmlApplicationContext来获取bean对象)

1.调用无参构造函数初始化对象

2.调用set方法设置属性值

3.实现BeanNameAware可以获取引用id

4.实现BeanFactoryAware可以获取bean工厂

5.实现ApplicationContextAware可以获取spring容器对象

6.定义一个类实现BeanPostProcessor接口,可以对初始化的所有对象进行编程(aop),后置处理器

7.定制初始化方法(init)

8.使用bean

9.关闭容器

10.调用销毁方法

三.属性注入

通过set注入:

1.如果注入的是基本类型的数组,可以使用以下方式来为属性赋值

<list>

<value></value>

</list>

2.如果注入的是list集合,并且类型是一个自定义对象时,使用如下方式

<list>

<ref bean=""/>

</list>

3.如果注入的是set集合,并且类型是一个自定义对象时,使用如下方式

<set>

<ref bean=""/>

</set>

4.如果注入的是map

<map>

<entry key ="", value 或者是value-ref =""></entry>

</map>

通过构造方法注入:

<constructor-arg> 类型有index 代表顺序,type代表java类型,value表示简单的数据类型的值,ref表示一个引用对象

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值