zoukankan      html  css  js  c++  java
  • 三、Bean的初始化

    一、使用构造器实例化Bean:这是最简单的方式,Spring IOC容器既能使用默认空构造器也能使用有参构造器两种方式创建bean

         空构造器

      1. <bean name="bean1" class="cn.javass.spring.chapter2.HelloImpl2"/>

          有参数构造器

      1. <bean name="bean2" class="cn.javass.spring.chapter2.HelloImpl2">  
      2. <!-- 指定构造器参数 -->  
      3.      <constructor-arg index="0" value="Hello Spring!"/>  
      4. </bean> 
      5.           

    二、使用静态工厂方式实例化Bean,使用这种方式除了指定必须的class属性,还要指定factory-method属性来指定实例化Bean的方法,而且使用静态工厂方法也允许指定方法参数,spring IoC容器将调用此属性指定的方法来获取Bean,配置如下所示:

      1. <!-- 使用静态工厂方法 -->  
      2. <bean id="bean3" class="cn.javass.spring.chapter2.HelloApiStaticFactory" factory-method="newInstance">  
      3.      <constructor-arg index="0" value="Hello Spring!"/>  
      4. </bean> 

    三、使用实例工厂方法实例化Bean,使用这种方式不能指定class属性,此时必须使用factory-bean属性来指定工厂Bean,factory-method属性指定实例化Bean的方法,而且使用实例工厂方法允许指定方法参数,方式和使用构造器方式一样,配置如下:

      1. <!—1、定义实例工厂Bean -->  
      2. <bean id="beanInstanceFactory"  
      3. class="cn.javass.spring.chapter2.HelloApiInstanceFactory"/>  
      4. <!—2、使用实例工厂Bean创建Bean -->  
      5. <bean id="bean4"  
      6. factory-bean="beanInstanceFactory"  
      7.      factory-method="newInstance">  
      8.  <constructor-arg index="0" value="Hello Spring!"></constructor-arg>  
      9. </bean> 
  • 相关阅读:
    ContextMenuStrip 类
    ToolStripMenuItem
    ubuntu16.04下安装cuda8.0
    插入排序
    Python *args **kw
    python面向对象编程
    0/1背包问题(回溯法)
    Python decorator装饰器
    Python 函数式编程
    分治策略(求解递归式的方法)
  • 原文地址:https://www.cnblogs.com/gudulijia/p/6405409.html
Copyright © 2011-2022 走看看