2.springioc实例化bean的三个方法

1.构造器

也就是在上一篇讲的那个例子,调用默认的无参构造函数

2.静态工厂方法

1)创建需要执行的方法的类

public class HelloWorld {
	
	public HelloWorld(){
		System.out.println("aaaa");
	}
	
	public void hello(){
		System.out.println("hello world");
	}
}

2)创建静态工厂

public class HelloWorldFactory {
	public static HelloWorld getInstance(){
		return new HelloWorld();
	}
}

3)编写applicationContext.xml配置文件

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
    <!-- 
    	在这个配置中,spring容器要用默认的构造函数为HelloWorld创建对象
     -->
	<bean id="helloWorld" class="HelloWorld"></bean>
	
	<!-- 
		采用静态工厂方法创建对象
			factory-method为工厂方法
	 -->
	 <bean id="helloWorld2" class="HelloWorldFactory" factory-method="getInstance"></bean>
</beans>

4)启动容器,创建对象,调用方法

@Test
	public void test(){
		ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
		HelloWorld world = (HelloWorld)context.getBean("helloWorld2");
		world.hello();
	}

3.实例工厂方法(略)

posted @ 2017-09-09 17:19  Kyhoon  阅读(364)  评论(0编辑  收藏  举报