Spring学习-06:IOC容器装配Bean(xml配置方式)详解
Spring框架Bean实例化的方式:1、构造方法实例化:(默认无参数)默认情况下采用的就是这种方式2、静态工厂实例化:3、实例工厂实例化:一、无参数构造方法的实例化:(1)新建类Bean1.java:package com.js.demo2;/*** 使用无参数的构造方法来实例化* @author js**/public class Bean1 {
·
Spring框架Bean实例化的方式:
1、构造方法实例化:(默认无参数)默认情况下采用的就是这种方式
2、静态工厂实例化:
3、实例工厂实例化:
一、无参数构造方法的实例化:
(1)新建类Bean1.java:
package com.js.demo2;
/**
* 使用无参数的构造方法来实例化
* @author js
*
*/
public class Bean1 {
}
(2)在applicationContext文件中配置Bean1:
<bean id="Bean1" class="com.js.demo2.Bean1"></bean>
(3)新建测试类SpringTest2.java:
package com.js.demo2;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
/**
* Bean的实例化测试
* @author js
*
*/
public class SpringTest2 {
@Test
// 无参数的构造方法的实例化
public void Demo1(){
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
Bean1 bean1=(Bean1)applicationContext.getBean("Bean1");
System.out.println(bean1);
}
}
二、
静态工厂实例化
(1)新建类Bean2.java:
package com.js.demo2;
/**
* 静态工厂实例化
* @author js
*
*/
public class Bean2 {
}
(2)新建静态工厂Bean2Factory.java:
package com.js.demo2;
/**
* Bean2的静态工厂
* @author js
*
*/
public class Bean2Factory {
public static Bean2 getBean2(){
System.out.println("静态工厂获得Bean2的方法");
return new Bean2();
}
}
(3)配置Bean2到applicationContext:
<bean id="Bean2" class="com.js.demo2.Bean2Factory" factory-method="getBean2"></bean>
(4)编写测试函数:
@Test
// 静态工厂的实例化
public void Demo2(){
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
Bean2 bean2=(Bean2)applicationContext.getBean("Bean2");
System.out.println(bean2);
}
三、实例工厂实例化
(1)新建类Bean3.java:
package com.js.demo2;
/**
* 实例工厂实例化
* @author js
*
*/
public class Bean3 {
}
(2)新建实例工厂Bean3Factory.java:
package com.js.demo2;
/**
* 使用实例工厂
* @author js
*
*/
public class Bean3Factory {
public Bean3 getBean3(){
return new Bean3();
}
}
(3)配置Bean3到applicationContext.xml:
<!-- 第三种,使用静态工厂实例化 -->
<bean id="Bean3" factory-bean="Bean3Factory" factory-method="getBean3"></bean>
<bean id="Bean3Factory" class="com.js.demo2.Bean3Factory"></bean>
(4)编写测试函数:
@Test
// 实例工厂的实例化
public void Demo3(){
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");
Bean3 bean3=(Bean3)applicationContext.getBean("Bean3");
System.out.println(bean3);
}
更多推荐
已为社区贡献3条内容
所有评论(0)