很多情况下我们需要定时执行一些任务,这就需要用到定时器这个东东,定时器的实现有很多种方式,目前也有很多流行的框架提供了这种功能,今天我们介绍的这种方式是JDK自带的定时器:
下面以一个示例进行分析:
public calss TaskManager implements ServletContextListener {
private Timer timer;
public void contextInitialized(ServletContextEvent arg0) {
timer = new Timer("任务名称", true);
timer.schedule(new MyTask(), 0, 1000 * 10); // 10秒钟执行一次
}
public void contextDestroyed(ServletContextEvent arg0) {
timer.cancel(); // 定时器销毁
}
}
public class MyTask extends TimerTask {
@Override
public void run() {
System.out.println("执行任务......");
// 这里写你要定期执行的任务
}
}
TaskManager为监听器,根据timer.schedule()方法中提供的参数定期执行自定义的任务MyTask,MyTask类为自定义任务类,监听器会根据时间设置调用MyTask类中的run()方法。在大型的应用环境中,我们可以将任务定义在另外的类中,比如service等,而在run()方法中调用service的方法。
另外需要配置web.xml文件,加入<listener>节,示例如下:
Java代码
<listener>
<listener-class>包名.TaskManager</listener-class>
</listener>
<listener>
<listener-class>包名.TaskManager</listener-class>
</listener>
分享到:
相关推荐
"理想Web倒计时器的设计与实现" 本文总结了理想Web倒计时器的设计与实现,解决了传统倒计时器的缺陷,如页面刷新后重新开始倒计时、面关闭再打开后重新开始倒计时、无法做到全部客户端同步、计时不精确、无法对自身...
实现这些效果的核心思路是通过定时器(如JavaScript的`setInterval`函数)周期性地改变图片的位置。我们可以通过修改图片的CSS属性(如`left`或`top`)来达到滚动的目的。以下是一段简单的示例代码,展示了如何实现...
这种思路虽然直观,但缺点在于需要维护多个定时器和对应的逻辑,且实现起来较为繁琐。特别是当页面中的iframe比较多时,实现和维护的复杂度都会增加。 第二种思路是定时器在执行时判断其所在的iframe是否处于显示...
实现Web打字效果的关键在于利用JavaScript定时器(`setTimeout`)和字符串操作函数(如`substring`或`slice`)来控制文本的逐步显示。具体步骤如下: 1. **定义文本内容**:确定要逐步显示的文字内容。 2. **初始化...
思路比较简单,前台通过HTML录入界面获取数据,然后组合成符合Web服务端要求的字符串(操作指令串),存入JS本地变量(各网页间的公用变量)中,FlashSocket网页采用JS定时器获取操作指令串,通过上述web服务端传输...
在使用jQuery进行Web开发时,经常会遇到需要监听某个元素内容变化的情况。通常,元素内容变化的监听可以通过绑定一些内置的jQuery事件来实现,但对于div这样的非输入型元素,标准的change事件就无能为力了。本文将...
博文a 中的老师,提供了Redis 实现消息队列...整体思路在博文a 中老师已经介绍,及依靠 mvc 框架,通过web端用户提交事件,实现消息入列,通过定时器(Timer)实现按照时间间隔的消息出列,Redis 作为存储媒介,存储消
通过上述的分析,我们可以看出,优化后的淡入淡出效果实现思路,不但简化了代码逻辑,提高了效率,还使得开发过程中对动画的控制更为直观。这是一次对常规动画实现思路的创新,具有较高的应用价值和推广意义。在实际...
本篇将深入探讨一个基于Java Web技术实现的在线考试系统的源码,帮助读者理解其背后的编程逻辑和设计思路。 首先,Java Web是一种广泛应用于开发Web应用的技术,它结合了Java语言的强大功能与Web应用的灵活性。Java...
作为一枚后端程序狗,项目实践常遇到定时任务的工作,最容易想到的的思路就是利用Windows计划任务/wndows service程序/Crontab程序等主机方法在主机上部署定时任务程序/脚本。 但是很多时候,若使用的是共享主机或者...
2. 实现LED数字时钟的思路 在实现LED数字时钟效果时,首先需要理解数字时钟的构成。一个传统的LED数字时钟由7个段(segment)组成,每个段代表数字的一部分。通过控制这些段的显示与否,可以组合出0到9的每一个数字...
远程功率监控系统的设计思路主要基于ZigBee技术与Web技术的结合。ZigBee技术是一种新兴的无线通信技术,它具备低速率、低成本、低功耗以及灵活的网络结构特点,这些特性使得ZigBee非常适合在监控现场中应用。在本...
本文将深入解析论文中的关键技术和设计思路。 首先,该毕业设计的目标是创建一个能够帮助用户记住并提前为亲朋好友发送生日祝福的Android应用。应用的核心功能包括添加好友、记录生日,以及利用SQLite数据库存储...
在Web开发中,图片轮播是一种常见的功能,用于展示一组图片并自动或手动切换。jQuery,一个流行的JavaScript库,提供了丰富的API和简便的语法,使得实现这样的功能变得轻松易行。本篇文章将详细介绍如何使用jQuery来...
描述中提到,这个实现是基础的,主要提供了思路,而不是一个完整的、可直接部署到生产环境的项目。因此,我们主要会探讨jQuery在构建聊天功能时可能涉及的关键技术和步骤。 1. **DOM操作**:jQuery的核心是简化对...
实现轮播停留效果的基本思路是使用定时器函数,比如JavaScript中的`setTimeout`或`setInterval`,来控制元素的显示和隐藏。通常需要搭配一些CSS过渡效果(如`transition`属性),以便在用户交互时可以平滑地展示或...
《数电实践--市话的计费计时系统(web)》是关于数字电子技术实际应用的一个项目,主要涉及电话计费系统的实现。在这个项目中,我们不仅会学习到基础的数字逻辑电路,还会深入理解如何将这些理论知识应用于实际的计费...
1. 明确需求,掌握要做什么,并画出框架图,理清思路。 2. 在网上下载所需图片和文本介绍,并分清各模块的内容。 3. 构建各网页的框架,设置好样式和属性。 4. 正式往框架内敲入代码,实现各项功能的函数等。 5. ...
项目中的"QQ窗体停靠.txt"文件可能包含了具体的代码示例或实现细节,但因为无法直接查看文件内容,这里只能提供一般性的实现流程和思路。如果需要更具体的代码实现,可以参考该文本文件或相关的C# UI编程教程。 总...