spring的IoC就是把创建对象的过程交给容器去创建,所以bean管理就是很重要的一部分。
一.bean实例化的方式
1.使用类的无参构造函数创建
<bean id="user" class="cn.dmsd.ioc.User"/>
2.使用静态工厂创建
<bean id="bean1" class="cn.dmsd.bean.Bean1Factory" factory-method="getStaticBean"/>
3.使用实例工厂创建
<bean id="bean2Factory" class="cn.dmsd.bean.Bean2Factory"/>
<bean id="bean2" factory-bean="bean2Factory" factory-method="getBean"/>
二.bean标签的常用属性
1.id
id属性就是给这个类起的名字,它不能包含特殊符号,我们在代码中可以根据id值得到配置对象。
2.class
class属性是创建对象所在类的全路径。
3.name
name属性和id一样,也是给类起的名字,但是它可以包含特殊符号,而且适用于structs1。
4.scope
scope属性声明的bean的作用范围,它有5个可以选择的值,分别代表不同的作用范围。
singleton:默认值,创建出的对象是单例的。
prototype:创建的对象是多例的。
request:在web项目中,把spring创建的bean对象放到request域中。
session:在web项目中,把spring创建的bean对象放到session域中。
globalSession:在web项目中,把spring创建的globalSession对象放到session域中。如果没有porlet环境,globalSession相当于session。