bean的實例化方式

spring中bean的實例化方式有三種,1.構造器實例化,2.實例工廠實例化,3.靜態工廠實例化spring

1.構造器實例化方式app

public class bean1 {
public bean1() {
}
}
applicatContext.xml中的配置
<bean id="bean1" class="com.itheima.ioc.Constructorbean.bean1"/>
測試
public class consTest {
public static void main(String[] args) {
ApplicationContext applicationContext=new ClassPathXmlApplicationContext("applicationContext.xml");
bean1 bean=(bean1) applicationContext.getBean("bean1");
}
}

2.靜態工廠實例化bean
public class Bean2 {
public Bean2() {
}
}
//靜態工廠類
public class MyFactoryBean2 {
public static Bean2 creatBean() {
return new Bean2();
}
}

applicatContext.xml中的配置
<bean id="bean2" class="com.itheima.ioc.StaticFactoryshilihuaBean2.MyFactoryBean2"
factory-method="creatBean"/>
測試:
public class TestFactoryBean {
public static void main(String[] args) {
ApplicationContext applicationContext=new ClassPathXmlApplicationContext("applicationContext.xml");
Bean2 bean2=(Bean2)applicationContext.getBean("bean2");
System.out.println(bean2);
}
}
3.實例工廠實例化bean
public class bean3 {
}
實例工廠類
public class MyBeanFactory {
public MyBeanFactory() {
System.out.println("這是實例化工廠實例化bean...");
}

public bean3 createBeanFactory() {
return new bean3();
}
}
applicationContext.xml中的配置
<bean id="MybeanFactory" class="com.itheima.ioc.shiligongcshilihBean3.MyBeanFactory"/>
<bean id="bean3" factory-bean="MybeanFactory" factory-method="createBeanFactory"/>
測試
public class shilihuabeanTest {    public static void main(String[] args) {        ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");        bean3 bean=(bean3)applicationContext.getBean("bean3");        System.out.println(bean);    }}
相關文章
相關標籤/搜索