`

java定时执行某个事件的3种方法

阅读更多

转载:http://www.liuzm.com/article/java/91021b.htm

 

在某个时间,执行某个事件时,在JAVA 目前是有三种方法:

底一个是JAVA类中的 Timer 这个类,也是最常用到的
第二个是ServletContextListener
第三个是 如果用SPRING,org.springframework.scheduling.timer.ScheduledTimerTask也可以

1)java.util.Timer
这个方法应该是最常用的,不过这个方法需要手工启动你的任务:
Timer timer=new Timer();
timer.schedule(new ListByDayTimerTask(),10000,86400000);
这里的ListByDayTimerTask类必须extends TimerTask里面的run()方法。

2)ServletContextListener
这个方法在web容器环境比较方便,这样,在web server启动后就可以自动运行该任务,不需要手工操作。
将ListByDayListener implements ServletContextListener接口,在contextInitialized方法中加入启动Timer的代码,在contextDestroyed方法中加入cancel该Timer的代码;然后在web.xml中,加入listener:

<listener>
<listener-class>com.qq.customer.ListByDayListener</listener-class>
</listener>

3)org.springframework.scheduling.timer.ScheduledTimerTask如果你用spring,那么你不需要写Timer类了,在schedulingContext-timer.xml中加入下面的内容就可以了:

 写道
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">

<beans>
<bean id="timer" class="org.springframework.scheduling.timer.TimerFactoryBean">
<property name="scheduledTimerTasks">
<list>
<ref local="MyTimeTask1"/>
</list>
</property>
</bean>

<bean id="MyTimeTask" class="com.qq.timer.ListByDayTimerTask"/>

<bean id="MyTimeTask1" class="org.springframework.scheduling.timer.ScheduledTimerTask">
<property name="timerTask">
<ref bean="MyTimeTask"/>
</property>
<property name="delay">
<value>10000</value>
</property>
<property name="period">
<value>86400000</value>
</property>
</bean>
</beans>
 

 

 

分享到:
评论

相关推荐

    Java定时执行某个任务

    在Java编程中,定时执行某个任务是一项常见的需求,例如定期备份数据、发送邮件或执行维护操作等。要实现这一功能,Java提供了多种解决方案。这里我们将深入探讨两种主要的方法:Java的`java.util.Timer`类和Java 5...

    java定时运行程序执行方法

    每天可以定时执行一个程序,运行方法,也就是相当于定时器一样.好处就是可以比如平常程序访问量数据量方面比较大的时候,耗时间时你可以把它定时某个访问量或数据量小的时间段运行.

    java定时执行代码.

    Java定时执行代码是Java开发中常见的一种需求,用于在特定时间点或按照预设周期执行某段任务。Java提供了多种实现定时任务的机制,这里主要介绍两种:Java.util.Timer类和java.util.concurrent....

    JAVA定时运行程序

    ### JAVA定时运行程序知识点解析 #### 一、概述 在Java编程中,实现定时任务是一项常见且实用的功能。本文将详细介绍如何使用`java.util.Timer`类来创建一个能够定时执行特定任务的应用程序。通过分析提供的代码...

    java定时任务,每天定时执行任务

    ### Java定时任务实现:每天定时执行任务 #### 一、概述 在Java开发中,定时任务是非常常见的一种需求。例如,需要定期清理数据库中的过期数据、定时发送邮件通知等场景。本文将详细介绍如何利用Java内置的`Timer`...

    java定时器定时调用任务

    这个方法包含了你希望定时执行的代码。 ```java class MyTask extends TimerTask { @Override public void run() { // 这里编写你要定时执行的代码 } } ``` 2. 创建`Timer`实例:接着,你需要创建一个`...

    java定时检测系统

    Java定时检测系统是一种基于Java编程语言实现的自动化解决方案,它能够按照预设的时间间隔执行特定的任务,例如数据更新、文件修改、系统监控等。在Java中实现这样的功能,主要依赖于以下几个关键知识点: 1. **...

    JAVA项目服务器启动时自启动指定的Servlet,并定时执行任务

    同时,通过在Servlet的`init()`方法中设置定时器,我们可以实现定时执行的任务。这个过程涉及到对Java Web规范的理解,以及对Servlet生命周期的掌握。在实际项目中,这样的功能可能用于执行数据初始化、日志清理、...

    java定时关机源代码

    Java定时关机功能是通过编程实现计算机在特定时间自动关闭的一种技术。这主要涉及到操作系统级别的交互,以及对Java多线程和定时任务的理解。在这个场景中,`Window.java`、`Shutdown.java` 和 `manifest.mf` 文件...

    JAVA将一个数据中数据定时自动复制(抽取)到另一个数据库

    Java是一种广泛使用的面向对象的编程语言,具有丰富的库和框架,可以方便地处理数据库操作和定时任务。在这个项目中,我们将重点关注两个关键部分:Java线程控制和定时任务。 1. **Java线程控制**:线程是Java中的...

    java线程定时启动

    Java标准库提供了几种不同的方式来实现定时任务的功能,其中最常用的是`java.util.Timer`类与`java.util.TimerTask`类的组合使用。 #### 二、核心概念 1. **Timer类**:它是Java中的定时器类,用于安排和管理定时...

    3类java定时任务代码

    Java定时任务是软件开发中一个常见且重要的功能,它允许程序在特定时间点或按照预设的时间间隔执行特定的任务。Java提供了多种实现定时任务的方法,包括`java.util.Timer`类和`java.util.concurrent....

    java定时生成execl并发送邮件

    在Java编程领域,实现“java定时生成execl并发送邮件”的功能是一项常见的需求,尤其在自动化运维、数据报告和监控系统中。这个功能涉及到多个Java库和技术,包括Apache POI用于处理Excel文件,Quartz作为定时任务...

    定时打开exe文件的java_GUI程序

    4. **定时**:指的是程序包含了一个定时器组件,能够按照用户设定的时间触发某个事件,如启动.exe文件或执行关机操作。 在提供的压缩包子文件列表中,有"ShutdownByTime.java"和"dingshi.png"两个文件: - **...

    Java定时操作数据库测试Demo

    本示例“Java定时操作数据库测试Demo”着重讲解如何利用Java的定时器(Timer)类来定期执行对数据库的操作,涉及到的数据库包括PostgreSQL、Oracle和MongoDB这三种主流的关系型和非关系型数据库。 首先,让我们了解...

    java、杀死启动进程、定时执行程序、隐藏黑窗口(dos窗口)、线程异常死亡(保活)

    接着,我们讨论定时执行程序。Java提供了`java.util.Timer`和`java.util.concurrent.ScheduledExecutorService`两个工具类来实现定时任务。`ScheduledExecutorService`更为推荐,因为它更强大且线程安全。下面是一个...

    JAVA定时任务在创业业绩考核平台中的应用.pdf

    JAVA定时任务是JAVA语言中的一种机制,它允许开发者在指定的时间点执行某个任务。JAVA定时任务在创业业绩考核平台中的应用可以自动跟踪和考核学生创业业绩,减轻创业指导老师的工作负担。 在创业业绩考核平台中,...

    一个java的定时休息软件

    当用户触发某个事件时,程序会响应并执行相应的操作。 7. **跨平台兼容性**:由于Java的跨平台特性,该定时休息软件可以在安装了Java运行环境的任何操作系统上运行,包括Windows、Mac OS和Linux等。 8. **健康工作...

    java spring quartz 动态定时任务

    Quartz是一个开源的作业调度框架,支持丰富的调度策略,包括简单的定时执行、按日程表执行以及复杂的表达式执行。Spring框架则提供了一种优雅的方式来整合Quartz,使我们能够利用Spring的依赖注入和管理功能来处理...

    Java里timer执行定时任务

    ### Java里timer执行定时任务 #### 一、延时执行 在Java中,`java.util.Timer` 类提供了创建和管理定时任务的功能。如果需要在特定时间之后执行某个任务,可以利用 `Timer` 类的 `schedule()` 方法。此方法接受一...

Global site tag (gtag.js) - Google Analytics