Java Spring Tutorial -- Factory, Static, and Constructor Bean Instantiation
来源:互联网 发布:淘宝线下代购店怎么开 编辑:程序博客网 时间:2024/05/17 06:04
package com.zxl.spring;import org.springframework.context.support.ClassPathXmlApplicationContext;public class SpringApp12 {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubClassPathXmlApplicationContext context=new ClassPathXmlApplicationContext("SpringBeans.xml");SpringBean springBean=(SpringBean) context.getBean("constructorInstantiatedBean");System.out.println(springBean.getMessage());springBean=(SpringBean) context.getBean("staticlyInstantiatedBean");System.out.println(springBean.getMessage());springBean=(SpringBean) context.getBean("factoryInstantiatedBean");System.out.println(springBean.getMessage());context.close();}}
package com.zxl.spring;public class SpringBean {private String message;private static SpringBean springBean=new SpringBean();public String getMessage() {return message;}public void setMessage(String message) {this.message = message;}public static SpringBean getSpringBean() {return springBean;}}
package com.zxl.spring;public class SpringBeanFactory {public SpringBean createSpringBean(){return new SpringBean();}}
<?xml version="1.0" encoding="UTF-8"?><beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.springframework.org/schema/beans" xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-3.0.xsd" > <bean id="constructorInstantiatedBean" class="com.zxl.spring.SpringBean" > <property name="message" value="this bean was instantiated using a constructor..." /> </bean> <bean name="staticlyInstantiatedBean" class="com.zxl.spring.SpringBean" factory-method="getSpringBean" > <property name="message" value="this bean was instantiated using a static method..." /> </bean> <bean name="springBeanFactory" class="com.zxl.spring.SpringBeanFactory" /> <bean name="factoryInstantiatedBean" factory-bean="springBeanFactory" factory-method="createSpringBean" > <property name="message" value="this bean was instantiated using a factory method..." /> </bean></beans>