隨筆-153  評(píng)論-235  文章-19  trackbacks-0
                當(dāng)為遺留系統(tǒng)加入spring時(shí),經(jīng)典問(wèn)題就是遺留系統(tǒng)需要引用spring管理的bean。幸好spring有機(jī)制可以處理這些。

          建一個(gè)類實(shí)現(xiàn)ApplicationContextAware接口,有一個(gè)引用ApplicationContext的靜態(tài)成員,然后,遺留系統(tǒng)需要引用spring管理的bean的地方,使用這個(gè)類。

          1.比如:我這里建一個(gè)SpringContext類

          package net.blogjava.chenlb;

          import org.springframework.beans.BeansException;
          import org.springframework.context.ApplicationContext;
          import org.springframework.context.ApplicationContextAware;

          /**
           * 此類可以取得Spring的上下文.
           * Spring 使new方法創(chuàng)建的對(duì)象可以引用spring管理的bean.
           * 2007-10-18 上午11:12:33
           * 
          @author chenlb
           
          */
          public class SpringContext implements ApplicationContextAware {

              
          protected static ApplicationContext context;
              
              
          public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
                  context 
          = applicationContext;
              }

              
          public static ApplicationContext getContext() {
                  
          return context;
              }

          }

          2.然后在spring配置文件里加
          <bean id="springContext" class="net.blogjava.chenlb.SpringContext"></bean>

          3.其它類中引用
          MyBean myBean = (MyBean) SpringContext.getContext().getBean("myBean");

          4.如果老是寫(xiě)SpringContext.getContext().getBean("...");麻煩,可以建一個(gè)工廠類來(lái)返回你要的bean
          package net.blogjava.chenlb;



          public class MyServerFactory {


              
          public static MyBean1 getMyBean1() {
                  
          return (MyBean1) SpringContext.getContext().getBean("myBean1");
              }
              

          }


          ^_^
          posted on 2007-10-27 16:31 流浪汗 閱讀(15425) 評(píng)論(1)  編輯  收藏 所屬分類: Spring

          評(píng)論:
          # re: spring 依賴注入到直接new 對(duì)象[未登錄](méi) 2011-05-17 17:20 | li
          正好解決了靜態(tài)類需要使用注入對(duì)象的問(wèn)題  回復(fù)  更多評(píng)論
            
          主站蜘蛛池模板: 林芝县| 深州市| 伊吾县| 鹤壁市| 扶沟县| 临汾市| 阿克苏市| 博爱县| 措美县| 武强县| 固安县| 龙井市| 唐河县| 井冈山市| 阳西县| 潮州市| 郧西县| 聂荣县| 白玉县| 平邑县| 辰溪县| 金坛市| 依兰县| 房产| 文山县| 安陆市| 天镇县| 大荔县| 星子县| 互助| 信阳市| 三江| 宿州市| 宝应县| 华坪县| 台南市| 松溪县| 平舆县| 陆良县| 思茅市| 嘉峪关市|