首页 | 源码下载 | 网站模板 | 网页特效 | 广告代码 | 网页素材 | 字体下载 | 书库 | 站长工具
会员投稿 投稿指南 RSS订阅
当前位置:主页>网络编程>java教程>资讯:JAVA WEB程序中添加定时器的代码介绍

JAVA WEB程序中添加定时器的代码介绍

www.jz123.cn  2010-02-23   来源:   中国建站    责任编辑(袁袁)    我要投递新闻

//这是我的定时器类,用来定时执行某段任务;
  package com.my.time;
  import java.text.ParseException;
  import java.text.SimpleDateFormat;
  import java.util.Date;
  import java.util.Timer;
  public class BugXmlTimer {
  public Timer timer;
  public void timerStart(){
  timer = new Timer();
  Date datetime=new Date();
  Date midnightDate=new Date();
  SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd");
  SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  try {
  midnightDate = sdf2.parse(sdf1.format(datetime)+" 23:00:00");
  } catch (ParseException e) {
  // TODO Auto-generated catch block
  e.printStackTrace();
  }
  long in=midnightDate.getTime()-datetime.getTime();
  System.out.println("before task");
  //立刻执行,然后每隔30s执行一次
  timer.schedule(new BugXmlTimerTask(), 0,30000);
  }
  public void timerStop(){
  if(timer!=null)
  timer.cancel();
  }
  public static void main(String[] args){
  BugXmlTimer myTimer=new BugXmlTimer();
  // TODO Auto-generated method stub
  myTimer.timerStart();
  }
  }
  //这是执行任务的类,即每隔一段时间要做的事情在这里
  package com.my.time;
  import java.util.TimerTask;
  public class BugXmlTimerTask extends TimerTask {
  @Override
  public void run() {
  System.out.print("run task");
  }
  }
  //以下是出发定时操作的类,该类实现了ServletContextListener
  public class MyTimerListener implements ServletContextListener {
  private BugXmlTimer mytimer = new BugXmlTimer ();
  public void contextInitialized(ServletContextEvent event) {
  mytimer.timerStart();
  }
  public void contextDestroyed(ServletContextEvent event) {
  mytimer.timerStop();
  }
  }

 

  然后在web.xml里部署一下,即可在程序启动后运行定时器了!

<listener> 
  <listener-class>com.my.time.MyTimerListener </listener-class>
  </listener>


上一篇:编程实例:Java中Calendar日期对象 下一篇:JAVA时间格式化处理的小方法

评论总数:0 [ 查看全部 ] 网友评论


关于我们隐私版权广告服务友情链接联系我们网站地图