spring2.5實例化bean的三種方式

          Posted on 2009-07-05 17:44 胡娟 閱讀(394) 評論(0)  編輯  收藏 所屬分類: JAVA

          通過構造函數實例化bean,需要指定class屬性,給bean提供一個無參的構造方法

           <bean id="userDaoImpl" class="com.hujuan.dao.impl.UserDaoImpl"></bean>

          通過靜態工廠實例化bean,除需要指定class屬性外,同時還必須使用factory-method屬性指定要調用的工廠方法的名稱

           

          <!-- 使用靜態工廠實例化bean -->
              
          <bean id="userDaoImplFactory" class="com.hujuan.dao.impl.UserDaoImplFactory" factory-method="createUserDao"></bean>

          靜態工廠類

          package com.hujuan.dao.impl;

          public class UserDaoImplFactory{

              
          public static UserDaoImpl createUserDao(){
                  
          return new UserDaoImpl();
              }
          }

          通過實例工廠實例化bean,必須先實例化要實例化的bean,再通過factory-bean來設置使用哪個實例化工廠,通過factory-method來設置使用哪個方法

          <!-- 使用實例工廠實例化bean -->
              
          <bean id="userDaoImplFactory2" class="com.hujuan.dao.impl.UserDaoImplFactory"></bean>
              
          <bean id="userDaoFactory" factory-bean="userDaoImplFactory2" factory-method="createUserDao2"></bean>
          實例化工廠類
          package com.hujuan.dao.impl;

          public class UserDaoImplFactory{

              
          public UserDaoImpl createUserDao2(){
                  
          return new UserDaoImpl();
                  }
          }

          posts - 28, comments - 5, trackbacks - 0, articles - 1

          Copyright © 胡娟

          主站蜘蛛池模板: 宜章县| 红安县| 青阳县| 佛坪县| 绥中县| 翼城县| 拉孜县| 蛟河市| 罗江县| 巴楚县| 山东省| 陆河县| 景泰县| 永善县| 云安县| 依安县| 榆树市| 巍山| 柳河县| 内丘县| 金昌市| 柳州市| 都昌县| 葵青区| 曲靖市| 邯郸市| 略阳县| 章丘市| 建昌县| 托克逊县| 奇台县| 确山县| 清徐县| 五莲县| 塘沽区| 喀喇沁旗| 江口县| 遵化市| 娄烦县| 金华市| 石门县|