Chinaunix首页 | 论坛 | 博客
  • 博客访问: 756694
  • 博文数量: 160
  • 博客积分: 2516
  • 博客等级: 大尉
  • 技术积分: 1511
  • 用 户 组: 普通用户
  • 注册时间: 2004-10-24 17:58
文章分类

全部博文(160)

文章存档

2019年(2)

2018年(3)

2017年(15)

2016年(3)

2015年(11)

2014年(3)

2013年(1)

2012年(3)

2011年(17)

2010年(25)

2009年(17)

2008年(13)

2007年(14)

2006年(21)

2005年(10)

2004年(2)

分类: Java

2015-08-25 11:32:55


点击(此处)折叠或打开

  1. import org.springframework.context.ApplicationContext;
  2. import org.springframework.context.ApplicationContextAware;
  3. import org.springframework.web.context.ContextLoaderListener;
  4. import org.springframework.web.context.WebApplicationContext;
  5. import org.springframework.web.servlet.DispatcherServlet;
  6. public class ContextListener extends ContextLoaderListener implements ApplicationContextAware {
  7.     private static final Logger log = LoggerFactory.getLogger(ContextListener.class);
  8.     private static final String ATTR_NAME = "org.springframework.web.servlet.FrameworkServlet.CONTEXT.dispatcherServlet";
  9.     private static ApplicationContext applicationContext;
  10.     private static WebApplicationContext webApplicationContext;
  11.     public static <T> T getBean(Class<T> tClass) {
  12.         if (webApplicationContext == null) {
  13.             webApplicationContext = (WebApplicationContext) getCurrentWebApplicationContext()
  14.   .getServletContext().getAttribute(ATTR_NAME);
  15.         }
  16.         if (webApplicationContext != null) {
  17.             T bean = webApplicationContext.getBean(tClass);
  18.             if (bean != null) {
  19.                 return bean;
  20.             }
  21.         }
  22.         if (applicationContext != null) {
  23.             return applicationContext.getBean(tClass);
  24.         }
  25.         return null;
  26.     }
  27.     @Override
  28.     public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
  29.         ContextListener.applicationContext = applicationContext;
  30.     }
  31. }
                                   
阅读(788) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~