本博文只是简单介绍一下Timer的使用方法。适用于初学者进行参考,希望大家多多指点。废话不多说,直接上正题。
1、了解一下Timer类提供的方法
介绍几个常用的方法:
cancel() 终止此计时器,丢弃所有当前已安排的任务。
schedule(TimerTask task, long delay, long period) 安排指定的任务从指定的延迟后开始进行重复的固定延迟执行。
schedule(TimerTask task, long delay) 安排在指定延迟后执行指定的任务。(这个只执行一次,延时执行后,不再执行)
scheduleAtFixedRate(TimerTask task, long delay, long period) 安排指定的任务在指定的延迟后开始进行重复的固定速率执行。
2、Timer示例
本示例使用的是jdk1.6.
首先我编写了一个定时任务的工具类,提供了开始定时任务和取消定时任务。
package com.bao.timerUtil;
import java.util.Timer;
import java.util.TimerTask;
/**
* 定时任务工具类
* @author lanJ
*
*/
public class TimerUtil {
//定时执行时间
private static long TIME = 1000*6;
private Timer timer = null; //定时类
/**
* 启动定时任务
* @param timerTask
*/
public void startTimer(TimerTask timerTask) {
if(timer == null) {
timer = new Timer();
}
timer.schedule(timerTask, TIME, TIME);
}
/**
* 延时20秒启动定时任务
* @param timerTask
*/
public void startAtFixedTimer(TimerTask timerTask) {
if(timer == null) {
timer = new Timer();
}
timer.scheduleAtFixedRate(timerTask,1000*20,TIME);
}
/**
* 停止定时任务
*/
public void stopTimer() {
timer.cancel();
}
}
然后,编写一个自己的任务类。
package com.bao.timerTask;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.TimerTask;
/**
* 我的任务 说明:定时任务需要集成java.util.TimerTask类,并且重写run方法. 把你想要在定时任务中所做的事写在run方法中.
* @author lanJ
*
*/
public class MyTask extends TimerTask {
private String name;
public MyTask(String name) {
this.name = name;
}
@Override
public void run() {
System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()) + " Hello," + this.name);
}
}
最后,有个测试类。
package com.bao.main;
import com.bao.timerTask.MyTask;
import com.bao.timerUtil.TimerUtil;
public class TestMain {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
TimerUtil timerUtil = new TimerUtil();
timerUtil.startTimer(new MyTask("lanJ"));
timerUtil.startAtFixedTimer(new MyTask("bao"));
}
}
运行结果:
2012-09-10 10:01:24 Hello,lanJ
2012-09-10 10:01:30 Hello,lanJ
2012-09-10 10:01:36 Hello,lanJ
2012-09-10 10:01:38 Hello,bao
2012-09-10 10:01:42 Hello,lanJ
2012-09-10 10:01:44 Hello,bao
2012-09-10 10:01:48 Hello,lanJ
2012-09-10 10:01:50 Hello,bao
2012-09-10 10:01:54 Hello,lanJ
2012-09-10 10:01:56 Hello,bao
通过结果可以看出bao这个定时任务是延时了20秒才执行的。
分享到:
相关推荐
标题与描述均提到了“Java_Timer定时器实例_Spring实例”,这表明文章主要讨论的是如何在Java中使用Timer类创建定时任务,并将其整合到Spring框架中。以下是对该主题的详细解析: ### Java中的Timer定时器 #### ...
Java Timer定时器是Java语言中的一种常用的定时器机制,它可以帮助开发者实现一些需要在特定时间或特定间隔执行的任务。Java Timer定时器主要是通过java.util.Timer和java.util.TimerTask两个类来实现的。 Java....
【Timer定时器的使用方法】 在Java编程语言中,`java.util.Timer` 和 `java.util.TimerTask` 类是用于执行定期或延时任务的核心组件。它们允许开发者在指定的时间间隔内执行特定的操作,这对于实现定时任务,如定时...
Java定时器,也被称为`Timer`类,是Java标准库中的一个强大工具,它允许开发者在指定的时间间隔执行任务,从而实现定时操作。这个类在`java.util`包中定义,是实现定时任务调度的核心。在本文中,我们将深入探讨`...
`java.util.Timer`和`TimerTask`是Java标准库提供的基础定时器组件。`Timer`类允许我们创建一个计划任务,这些任务会在指定的延迟后或者定期执行。`TimerTask`是实际的任务实体,它继承自`Runnable`接口,你需要覆盖...
JAVA 中提供了多种方式来实现定时器,包括使用 Timer 和 TimerTask 类,使用 ScheduledExecutorService 等。 在 JAVA 中,Timer 和 TimerTask 是两个基本的类,用于实现定时器。Timer 类用于创建一个新的定时器,而...
Java定时器(Timer)是Java Swing库中的一个类,它提供了调度任务在未来某个时间执行的能力。这个类主要用于在GUI应用程序中实现定时触发某些操作,比如更新界面、执行动画或者执行周期性的后台任务。Timer类结合了...
### Timer定时器(Java) #### 知识点概述 在Java中,`Timer`类是`java.util`包的一部分,用于调度线程执行任务。它主要用于处理那些需要定期执行的任务,比如更新用户界面、发送电子邮件通知等场景。通过`Timer`...
需要注意的是,在实际开发中使用Java Timer时应当小心处理可能出现的异常,例如在解析日期时就可能会遇到ParseException。在多线程环境下,Timer类也是线程安全的,可以由多个线程共享一个Timer实例而不必担心线程...
【Java Timer定时器】 在Java中,`java.util.Timer` 类是用于调度任务的类,它可以在特定的时间点或者按照设定的周期执行某项任务。`Timer` 类提供了两种计划任务的方法:`schedule(TimerTask task, long delay)` ...
Java中的定时器(Timer)是Java.util包下用于执行定期任务的一个类,它与线程(Thread)紧密关联,能够帮助开发者实现定时执行特定任务的需求。这个机制在多线程编程(multithreading)中非常有用,特别是在需要定期...
Java中定时器(Timer)主要用于执行周期性的任务。通过`java.util.Timer`类,可以创建一个定时器对象,该对象负责调度事件。定时器可以用来执行两种类型的定时任务:一次性任务和周期性任务。 #### 一次性任务 一次...
一个很简单的java定时器,很适合初学者呢,希望能够给你一点的提示哦
总结来说,Java定时器`Timer`是一个实用的工具,可以方便地实现定时任务调度,但在高并发场景下,由于其单线程模型,可能需要考虑使用更高级的并发工具,如`ScheduledExecutorService`。在实际开发中,理解其工作...
通过阅读`TimerTest1.java`和`TimerTest2.java`的代码,你可以进一步了解如何在实际项目中使用`Timer`和`TimerTask`来实现特定的定时任务需求。这两个测试类可能包含了创建`Timer`实例、创建`TimerTask`实例以及调度...
【Timer定时器的应用】 在计算机编程中,`Timer` 是一个非常重要的概念,尤其是在图形用户界面(GUI)和实时系统中。它允许程序在特定时间间隔执行某项操作,为软件添加了计时和自动化功能。`Timer` 定时器在Java、...
本教程将详细介绍如何在Spring中使用`Timer`来实现能精确到几点运行的定时任务。 首先,我们需要理解`Timer`的基本概念。`java.util.Timer`和`java.util.TimerTask`是Java中的两个类,用于调度未来任务的执行。`...
下面,我们以一个简单的例子来解释如何在应用程序中使用定时器。假设我们要创建一个每秒钟更新一次当前系统时间并显示的程序: 1. 首先,我们需要导入相关的库或模块,比如在Python中: ```python import time ``` ...