`
terry0501
  • 浏览: 313738 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java 定时器

 
阅读更多

在web中,定时器的启动一般随web server的启动而启动,一般有两种方法.

方法一:在web.xml里配置一个Servlet,并设置其随web server的启动而启动。然后在该Servlet的init()方法里启动定时器,在destory()方法里销毁定时器。
方法二:在web.xml里配置一个Listener,然后在该Listener的初始化方法里启动定时器,在其销毁的方法朝左销毁定时器。

在servlet中启动定时器
java 代码
  1. import java.io.IOException;   
  2. import java.util.Timer;   
  3. import javax.servlet.RequestDispatcher;   
  4. import javax.servlet.ServletContext;   
  5. import javax.servlet.ServletException;   
  6. import javax.servlet.http.HttpServlet;   
  7. import javax.servlet.http.HttpServletRequest;   
  8. import javax.servlet.http.HttpServletResponse;   
  9.   
  10. import org.apache.commons.lang.StringUtils;   
  11.   
  12. public class ConvergeDataServlet extends HttpServlet {   
  13.   
  14.     private static final long serialVersionUID = 1L;   
  15.   
  16.     private Timer timer1 = null;   
  17.        
  18.     private Task task1;   
  19.        
  20.     /**  
  21.      * Constructor of the object.  
  22.      */  
  23.     public ConvergeDataServlet() {   
  24.         super();   
  25.     }   
  26.   
  27.     /**  
  28.      * Destruction of the servlet. 
     
  29.      */  
  30.     public void destroy() {   
  31.         super.destroy();    
  32.         if(timer1!=null){   
  33.             timer1.cancel();   
  34.         }   
  35.     }   
  36.   
  37.        
  38.     public void doGet(HttpServletRequest request, HttpServletResponse response)   
  39.             throws ServletException, IOException {   
  40.            
  41.     }   
  42.   
  43.        
  44.     public void doPost(HttpServletRequest request, HttpServletResponse response)   
  45.             throws ServletException, IOException {   
  46.         doGet(request, response);          
  47.     }   
  48.   
  49.     // init方法启动定时器   
  50.     public void init() throws ServletException {   
  51.            
  52.         ServletContext context = getServletContext();   
  53.            
  54.         // (true为用定时间刷新缓存)   
  55.         String startTask = getInitParameter("startTask");   
  56.                    
  57.         // 定时刷新时间(分钟)   
  58.         Long delay = Long.parseLong(getInitParameter("delay"));   
  59.            
  60.         // 启动定时器   
  61.         if(startTask.equals("true")){   
  62.             timer1 = new Timer(true);   
  63.             task1 = new Task(context);   
  64.             timer1.schedule(task1, delay * 60 * 1000, delay * 60 * 1000);   
  65.         }   
  66.     }   
  67. }   

 定时执行操作

java 代码
  1.   
  2. /**  
  3.  *   
  4.  * @author callan  
  5.  */  
  6. import java.util.TimerTask;   
  7.   
  8. import javax.servlet.ServletContext;   
  9.   
  10. public class Task extends TimerTask{   
  11.   
  12.     private ServletContext context;   
  13.        
  14.     private static boolean isRunning = true;   
  15.        
  16.     public Task(ServletContext context){   
  17.         this.context = context;   
  18.     }   
  19.        
  20.            
  21.     @Override  
  22.     public void run() {   
  23.         if(isRunning){   
  24.              
  25.         }   
  26.     }   
  27.   
  28. }   

 

在web.xml配置这个servlet为服务启动时就调用servlet

<servlet></servlet>
  < servlet >
     < servlet-name >taskservlet< / servlet-name >
    < servlet-class >com.task< /servlet-class >
    < init-param >
     < param-name >startTask< /param-name >
     < param-value >true< /param-value >
    < /init-param >
    < init-param >
     < param-name >intervalTime< /param-name >
     < param-value >1< /param-value >
    < /init-param >
    < load-on-startup >300< /load-on-startup >
  < /servlet >

<servlet></servlet>



 

分享到:
评论

相关推荐

    Java定时器

    Java定时器是Java编程语言中用于执行特定任务的调度工具,它允许程序员在指定的时间间隔后执行特定的代码块或任务。在Java中,我们主要使用`java.util.Timer`类和`java.util.TimerTask`类来实现定时器功能。这两个类...

    Java定时器的使用 Java程序

    Java定时器(java.util.Timer)是Java标准库中用于调度任务执行的重要工具,它允许我们按照预设的时间间隔执行特定的任务。在Java程序设计中,定时器常常用于实现周期性的任务,比如定时备份数据、定时检查系统状态...

    JAVA定时器JAVA定时器

    JAVA定时器,只要服务开启,就能指定某些代码在某个时刻执行,例如:监狱里罪犯的余刑天数,每天都要减少,就可以设置一个定时器在每天的23:59:59来执行减少余刑天数的天。

    java定时器

    java定时器,import java.util.Calendar; import java.util.Date; import java.util.Timer; import java.util.TimerTask; 规定每天几点执行一次

    Java定时器框架(Quartz)

    Java定时器框架Quartz是Java开发中用于任务调度的一个强大工具,它允许开发者精确地控制任务的执行时间,包括一次性任务和周期性任务。Quartz以其灵活性和稳定性,在企业级应用中广泛使用,尤其在需要定期执行后台...

    JAVA定时器JAVA定时器.pdf

    JAVA定时器 JAVA定时器是一种基于Quartz框架的任务调度器,用于在指定的时间执行特定的任务。在 Spring 框架中,JAVA定时器可以与Quartz框架集成,实现自动执行任务的功能。 1. JAVA定时器的基本概念 JAVA定时器...

    java 定时器(Timer)

    Java定时器(Timer)是Java Swing库中的一个类,它提供了调度任务在未来某个时间执行的能力。这个类主要用于在GUI应用程序中实现定时触发某些操作,比如更新界面、执行动画或者执行周期性的后台任务。Timer类结合了...

    Java定时器简例

    ### Java定时器实现详解 在Java编程中,定时任务是常见的需求之一,无论是服务器的定期维护、数据同步,还是客户端的动画更新等场景,都需要用到定时器来精确控制任务的执行时间。本文将深入解析一个基于Java的简单...

    java定时器设置及停止的方法

    在Java编程中,定时任务是不可或缺的一部分,它们用于执行周期性操作,如数据备份、监控、清理等。本文将深入探讨如何在Java中设置和停止定时任务,主要关注`java.util.Timer`和`java.util.TimerTask`,以及更现代的...

    java定时器的使用

    在应用开发中,经常需要一些周期性的操作,比如每5分钟执行某一操作等。 对于这样的操作最方便、高效的实现方式就是使用java.util.Timer工具类。

    java 定时器 spring 定时器

    Java定时器和Spring定时器是Java开发中用于执行周期性任务的重要工具,它们在系统维护、数据同步、报告生成等场景中发挥着关键作用。本文将深入探讨这两个概念,以及如何在Spring框架中配置和使用定时器。 首先,...

    java定时器.rar

    Java定时器(Timer)是Java语言中用于调度任务的一个重要工具,它可以帮助我们在特定时间执行一次或重复执行某个任务。这个“java定时器.rar”压缩包可能包含了关于如何使用Java定时器的相关示例代码和教程。 Java...

    java定时器服务!!

    Java定时器服务是Java平台中用于执行定时任务的关键组件,它允许开发者安排未来或定期的任务执行。在Java中,我们通常使用`java.util.Timer`类和`java.util.TimerTask`类来实现定时服务。这两个类提供了创建、调度和...

    简单易用的java定时器scheduler,有完整配置说明

    Java定时器,通常被称为Scheduler,是Java开发中用于执行定期任务的重要工具。它允许开发者在特定的时间间隔或者按照预设的计划执行代码,这在处理数据同步、日志清理、发送通知等场景中非常常见。在Java中,我们...

    JAVA定时器时间抓取

    Java定时器和时间处理是Java开发中的重要组成部分,特别是在需要执行周期性任务或者对时间有精确控制的应用场景中。本文将深入探讨Java定时器(Timer)的使用以及如何获取和处理年月日、时间节点等时间相关的信息。 ...

    java定时器(timer类使用详解)

    Java定时器,也被称为`Timer`类,是Java标准库中的一个强大工具,它允许开发者在指定的时间间隔执行任务,从而实现定时操作。这个类在`java.util`包中定义,是实现定时任务调度的核心。在本文中,我们将深入探讨`...

    Java定时器数字时钟

    Java定时器数字时钟是一种基于Java编程语言实现的软件,它可以模拟系统时间并实时更新显示。这个程序是在Eclipse 7.5集成开发环境中编写的,Eclipse是Java开发者广泛使用的IDE,它提供了丰富的功能,如代码编辑、...

    Java定时器Timer简述共8页.pdf.zip

    Java定时器(Timer)是Java语言提供的一种用于执行定时任务的工具类,它位于java.util包下。在Java编程中,我们有时需要在特定的时间间隔内执行某些操作,例如每隔一段时间更新数据、发送通知或者执行定期维护等。这...

Global site tag (gtag.js) - Google Analytics