【Spring 系列】二、spring三种实例化bean的方式

  • beans.xml中配置

    <!-- 三种实例化bean的方式 -->
    
     <!-- 1.使用类构造器实例化 -->
    <bean id="personService" class="com.liuyong666.service.impl.PersonServiceBean"></bean>
    
    <!-- 2.使用静态工厂方法实例化 -->
    <bean id="personService2" class="com.liuyong666.service.impl.PersonServiceBeanFactory" factory-method="createPersonServiceBean"></bean>
    
    <!-- 3.使用实例工厂方法实例化 -->
    <bean id="personServiceFactory" class="com.liuyong666.service.impl.PersonServiceBeanFactory"></bean>
    <bean id="personService3" factory-bean="personServiceFactory" factory-method="createPersonServiceBean2"></bean>
    
  • PersonServiceBeanFactory类

    package com.liuyong666.service.impl;
    public class PersonServiceBeanFactory {
         
    	
    	public static PersonServiceBean createPersonServiceBean(){
         
    		return new PersonServiceBean();
    	}
    	
    	public PersonServiceBean createPersonServiceBean2(){
         
    		return new PersonServiceBean();
    	}
    }
    
  • 测试类

  public class TestSpring {
   /** ​ * 使用spring框架获取bean ​ */@Testpublic void getBeanBySpring(){
   
  ​			ApplicationContext context = new ClassPathXmlApplicationContext(new String[]{
   "beans.xml"});
  ​			PersonService bean = (PersonService) context.getBean("personService");
  ​			bean.save();}/** ​ * 使用静态工厂方法获取bean ​ */@Testpublic void getBeanByStaticFactory(){
   
  ​			ApplicationContext context = new ClassPathXmlApplicationContext(new String[]{
   "beans.xml"});
  ​			PersonService bean = (PersonService) context.getBean("personService2");
  ​			bean.save();}/** * 使用实例工厂方法获取bean */
  	@Test
  	public void getBeanByInstantceFactory(){
   
  		ApplicationContext context = new ClassPathXmlApplicationContext(new String[]{
   "beans.xml"});
  		PersonService bean = (PersonService) context.getBean("personService3");
  		bean.save();
  	}
  
  }

全部评论

相关推荐

沉淀一会:**圣经 1.同学你面试评价不错,概率很大,请耐心等待;2.你的排名比较靠前,不要担心,耐心等待;3.问题不大,正在审批,不要着急签其他公司,等等我们!4.预计9月中下旬,安心过节;5.下周会有结果,请耐心等待下;6.可能国庆节前后,一有结果我马上通知你;7.预计10月中旬,再坚持一下;8.正在走流程,就这两天了;9.同学,结果我也不知道,你如果查到了也告诉我一声;10.同学你出线不明朗,建议签其他公司保底!11.同学你找了哪些公司,我也在找工作。
点赞 评论 收藏
分享
10-27 17:26
东北大学 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务