spring中集成TimerTask执行定时任务

本文介绍了如何在Spring中使用ScheduledTimerTask和TimerFactoryBean实现定时任务。通过自定义TimerTask并配置Spring的bean,当系统加载配置文件时,定时任务会自动启动并由Spring管理。配置包括启动延迟、后续周期以及指定触发器。在web项目中,还需要在web.xml中配置Spring的ApplicationContext加载。
摘要由CSDN通过智能技术生成

Spring对Timer的支持的核心是由ScheduledTimerTask和TimerFactoryBean类组成的。 ScheduledTimerTask类是对TimerTask的包装器实现,这样你就可以为这个任务定义触发器信息。使用 TimerFactoryBean类,你可以让Spring使用配置创建触发器,并为一组指定的ScheduledTimerTask bean自动创建Timer实例。

1、自定义timerTask,比如:定时输出ServletContext中的信息,本例中输出项目的绝对路径(比如:D:\software\apache-tomcat-6.0.33\webapps\spring\)

Java代码 spring中集成TimerTask执行定时任务  spring中集成TimerTask执行定时任务spring中集成TimerTask执行定时任务
  1. public class BirthdayReminderTimerTask extends TimerTask implements ServletContextAware{   
  2.   /*通过实现ServletContextAware可获得servletContext*/  
  3.   private ServletContext servletContext;   
  4.   private static Logger logger = Logger.getLogger(BirthdayReminderTimerTask.class);   
  5.   @Override  
  6.   public void run() {   
  7. //    logger.debug("BirthdayReminderTimerTask is running");   
  8.     setServletContext(servletContext);   
  9.     try {   
  10.       System.out.println(this.servletContext.getRealPath("/"));   
  11.     } catch (Exception e) {   
  12.       e.printStackTrace();   
  13.     }   
  14.   }   
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值