静态工厂方式实例化

Bean2

package com.student.instance.constructor;

public class Bean2 {

}

MyBean2Factory :创建静态工厂

package com.student.instance.constructor;

public class MyBean2Factory {
	public static Bean2 createBean() {
		return new Bean2();
	}

}

beans2: 配置文件




	

	
	

InstanceTest2 测试文件

package com.student.instance.constructor;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class InstanceTest2 {

	public static void main(String[] args) {
		String xmlPath = "com/student/instance/constructor/beans2.xml";
		ApplicationContext applicationContext =new ClassPathXmlApplicationContext(xmlPath);
		Bean2 bean =(Bean2)applicationContext.getBean("bean2");
		System.out.println(bean);

	}

}

运行结果:

十月 13, 2019 2:37:16 下午 org.springframework.context.support.ClassPathXmlApplicationContext prepareRefresh
信息: Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@46f7f36a: startup date [Sun Oct 13 14:37:16 CST 2019]; root of context hierarchy
十月 13, 2019 2:37:16 下午 org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions
信息: Loading XML bean definitions from class path resource [com/student/instance/constructor/beans2.xml]
com.student.instance.constructor.Bean2@51efea79

解释:
创建一个工厂类(BeanFactory),工厂类里面创建一个返回实体类(Bean2)的方法,配置文件不再写实体类的路径改成工厂类的路径,并且还要用factory-method指明使用的工厂的那个方法创建的。

实际上就是在创建一个类,把创建实体类的操作交给这个类来进行。

你可能感兴趣的:(JAVA框架——SSM)