Spring的bean管理——Bean实例化
程序员文章站
2022-03-03 11:24:30
...
Bean实例化的方式,通过spring里面的配置文件创建对象。实例化的方式有三种。
1.类的无参数的构造创建(配置文件)
<bean id="user" class="cn.itcast.ioc.User"></bean>
和上次写的博客ioc操作,举例子的方法一样。
2.静态工厂创建
创建静态方法,返回类对象。通过Factory使用类中的方法例如
创建bean2类
public class Bean2 {
/* 创建add方法 */
public void add() {
System.out.println("Bean2........");
}
}
创建Bean2Factory工厂类
public class Bean2Factory {
/* 静态方法 */
public static Bean2 getBean2() {
return new Bean2();
}
}
在xml配置文件中配置
<!-- 使用静态工厂创建对象 -->
<bean id="bean2" class="cn.itcast.bean.Bean2Factory"
factory-method="getBean2"></bean>
测试下
@Test
public void testBean2() {
/* 加载spring配置文件,根据创建对象 */
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
/* 得到配置创建对象 */
Bean2 bean2 = (Bean2) context.getBean("bean2");
System.out.println(bean2);
}
这样同样可以使用bean2类中的方法
3.实例工厂创建
和静态方法差不多
创建Bean3类
public class Bean3 {
public void add() {
System.out.println("bean3.....");
}
}
创建Bean3Factory的工厂
public class Bean3Factory {
public Bean3 getBean3() {
return new Bean3();
}
}
配置xml文件
<!-- 使用实例化工厂创建工厂对象 -->
<bean id="bean3Factory" class="cn.itcast.bean.Bean3Factory"></bean>
<bean id="bean3" factory-bean="bean3Factory"
factory-method="getBean3"></bean>
上面三种方法经常使用的就是无参数的构建方式,其他两种了解就好。