熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java開源技術 >> 正文

普通Java類獲取Spring的ApplicationContext

2013-11-23 20:10:22  來源: Java開源技術 

  在SSH集成的前提下某些情況我們需要在Action以外的類中來獲得Spring所管理的Service對象

  之前我在網上找了好幾好久都沒有找到合適的方法例如

  ApplicationContext context = new ClassPathXmlApplicationContext();

  當時我覺得沒有這個必要浪費內存後來我終於想出了一個解決方法在此拿來給大家參考下希望對大家有幫助

  創建一個類並讓其實現orgntextApplicationContextAware接口來讓Spring在啟動的時候為我們注入ApplicationContext對象

  示例代碼

  import orgspringframeworkbeansBeansException;

  import orgntextApplicationContext;

  import orgntextApplicationContextAware;

  public class MyApplicationContextUtil implements ApplicationContextAware {

  private static ApplicationContext context;

  //聲明一個靜態變量保存

  public void setApplicationContext(ApplicationContext contex) throws BeansException {

  ntext=contex;

  }

  public static ApplicationContext getContext(){

  return context;

  }

  }

  在applicationContextxml文件中配置此bean以便讓Spring啟動時自動為我們注入ApplicationContext對象

  例

  <! 這個bean主要是為了得到ApplicationContext 所以它不需要其它屬性>

  <bean class=orgingspringutilMyApplicationContextUtil></bean>

  有了這個ApplicationContext之後我們就可以調用其getBean(beanName)方法來得到由Spring 管理所有對象


From:http://tw.wingwit.com/Article/program/Java/ky/201311/28060.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.