Bean实例化方法
- 实现方式
(1)无参构造方式
(2)静态工厂方式
(3)实例工厂方式 - 具体实现
(1)无参构造方式:
Bean.java
public class Bean {
public void add()
{
System.out.println(“add……..”);
}
}
ApplicationContext.xml
无参构造方式:
<bean id="bean1" class="com.psn.spring.ioc.User"></bean>
public class User {
public void add()
{
System.out.println("add.......");
}
}
静态工厂方式:
<bean id="bean2" class="com.psn.spring.bean.Bean2Factory" factory-method="getBean2"</bean>
//静态方法,返回bean2
public class Bean2Factory {
public static Bean2 getBean2()
{
return new Bean2();
}
}
实例工厂方式:
<bean id="bean3Factory"class="com.psn.spring.bean.Bean3Factory"></bean>
<bean id="bean3" factory-bean="bean3Factory" factory-method="getBean3"></bean>
public class Bean3Factory {
// 使用实例共创创建对象
//普通的方法,返回Bean3对象
public Bean3 getBean3()
{
return new Bean3();
}
}
bean标签常用属性:
(1)id属性:id属性值名称任意命名,不能包含特殊符号,根据id值得到配置对象。
(2)class属性:创建对象所在类的全路径
(3)name属性:功能和id属性一样的,id属性值不能包含特殊符号,但是在name属性值里面可以包含特殊符号
(4)scope属性
- singleton:默认值,单例
- prototype:多例
- request:把创建的对象放入request域里面
- session:把创建的对象放入session域里面
- globalSession:把创建的对象放入globalSession里面