您的位置:首页 > 编程语言 > Java开发

比较Spring中三种实例化Bean的方法

2016-03-23 16:52 405 查看
1 使用构造器实例化

<!-- 调用默认构造器实现 可以使用scope="prototype"指定是否使用单例模式 -->
<bean id="personService" class="com.heying.service.impl.PersonServiceBean"/>


2 使用静态工厂

<!-- 通过id找到创建的工厂类,并使用注明的静态方法找到相应的method -->
<bean id="personService" class="com.heying.service.impl.PersonServiceBeanFactory" factory-method="creatPersonServiceBean"/>
public class PersonServiceBeanFactory{
public static PersonServiceBean creatPersonServiceBean(){
return new PersonServiceBean();
}
}


3 使用实例工厂

<!-- 实例化PersonServiceBeanFactory,然后使用工厂里面指定的方法创建 -->
<bean id="personServiceFactory" class="com.heying.service.impl.PersonServiceBeanFactory"/>
<bean id="personService" factory-bean="personServiceFactory" factory-method="creatPersonServiceBean"/>

public class PersonServiceBeanFactory{
public PersonServiceBean creatPersonServiceBean(){
return new PersonServiceBean();
}
}


装配:

AbstractApplicationContext applicationContext = new ClassPathXmlApplicationContext("beans.xml");
PersonService personService = (PersonService) applicationContext.getBean("personService");
personService.save();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  bean实例化 spring