在监听器中获取applicationContext的方法

原创 2016年08月29日 14:27:07

1.问题描述:有时候,我们需要在tomcat容器启动时执行一些java代码,这时候可以使用监听器。但是,如果我们执行的java代码使用了spring注解,这时候就不能够直接使用监听器。例如,在容器启动时,爬取某个网站的数据,并存储到数据库中。这时候就要考虑,在监听器中获取applicationContext对象,并通过该对象获取相应的bean。

2.解决方法:

在监听方法中加入如下代码:

   ApplicationContext act = ContextLoader.getCurrentWebApplicationContext();
   UserService userService = (UserService) act.getBean("userService");

总结:成功解决公司项目中遇到问题,开心!

相关文章推荐

Spring中使用ApplicationContext进行事件的监听之ApplicationEvent,ApplicationListener

spring的ApplicationEvent的使用     Spring 3.0中提供了很多类似*Aware的类,其中ApplicationContextAware接口可以实现我们在初始化be...

监听器(对application监听)

1:jsp       对Application监听                   this.getServletContext()....

面试知识点1:Tomcat+Spring中有几个ApplicationContext?它们的关系是什么样的?

Tomcat+Spring下,Context的关系?
  • RoxLiu
  • RoxLiu
  • 2014年03月14日 15:45
  • 2936

Tomcat的四种web应用部署方式详解

在Tomcat中有四种部署Web应用的方式,简要的概括分别是: (1)利用Tomcat自动部署 (2)利用控制台进行部署 (3)增加自定义的Web部署文件(%Tomcat_Home%\conf\...

web事件操作【监听器】之对application监听

在上一篇文章“过滤器应用”中我们提到过Servlet一共有三种:简单Servlet、过滤Servlet和监听Servlet,和大家一起学习过了前两种Servlet之后,我们再一起来学习第三种Servl...

获取Spring的上下文环境ApplicationContext的方式

获取Spring的上下文环境ApplicationContext的方式 Web项目中发现有人如此获得Spring的上下环境:   public class SpringUtil {      ...

Web项目启动初始化监听器如何获取spring bean

我们在项目开发中可能会遇到这样的需求,在项目启动的时候我们通过web.xml配置加载一个监听器,然后在监听器中初始化我们项目中所需要的数据,那我们分析一下实现 1: 首先创建监听器,实现ja...
  • yhq1913
  • yhq1913
  • 2016年12月29日 10:09
  • 1051

计划任务 SchedulerFactoryBean 配置

Quartz 是开源任务调度框架中的翘首,它提供了强大任务调度机制,同时保持了使用的简单性。Quartz 允许开发人员灵活地定义触发器的调度时间表,并可以对触发器和任务进行关联映射。此外,Quartz...

spring getbean 方法分析

在最近的项目中,有个地方我们不得不实用getBean的方法,自己从Spring context中获取bean进行数据库操作。 方法一(效率低,极易出现bug,不推荐使用): 刚刚开始的时候,我们使...

获取Spring上下文ApplicationContext的多种方法

1.实现监听器 2.在有request的请求,或者servlet中获取
  • lwphk
  • lwphk
  • 2014年09月28日 14:06
  • 4063
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在监听器中获取applicationContext的方法
举报原因:
原因补充:

(最多只允许输入30个字)