`
忧里修斯
  • 浏览: 437273 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

在web应用中指定时间自动执行任务

阅读更多
1、web监听器

package test;

import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Timer;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;

public class ContextListener implements ServletContextListener {
	
	//定时器
	Timer timer = null;
	
	//销毁
	public void contextDestroyed(ServletContextEvent event) {
		timer.cancel();     
        event.getServletContext().log("定时器以销毁");

	}

	//初始化
	public void contextInitialized(ServletContextEvent event) {
		timer = new Timer();
		event.getServletContext().log("定时器已启动");
		//设置在每晚19:15分执行任务
		Calendar calendar = Calendar.getInstance();
		calendar.set(Calendar.HOUR_OF_DAY, 19);
		calendar.set(Calendar.MINUTE, 16);
		calendar.set(Calendar.SECOND, 0);
		Date date = calendar.getTime();
		
		timer.schedule(new Task(),date);
        event.getServletContext().log("已经添加任务调度表"); 
	}

}


2、具体任务实现类

package test;

import java.util.Date;
import java.util.TimerTask;
/**
 * 具体任务
 */
public class Task extends TimerTask {

	private static boolean isRunning = false;

	@Override
	public void run() {
		if (!isRunning) {
			isRunning = true;
			System.out.println("开始执行........."+new Date());
			isRunning = false;
		}else{
			System.out.println("上次任务还没执行完");
		}
	}

}


3、配置监听器

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" 
	xmlns="http://java.sun.com/xml/ns/j2ee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
	http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

<!-- 定时监听器 -->	
<listener>  
  <listener-class>test.ContextListener</listener-class> 
</listener> 
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>
分享到:
评论

相关推荐

    JAVA自动执行任务

    JAVA自动执行任务 JAVA自动执行任务是指在WEB工程中实现自动执行任务的功能,通过使用Servlet上下文相关的侦听器和Java定时器来实现。...在WEB工程中,这种技术可以应用于各种自动执行任务的场景。

    WEB应用程序定时执行任务

    WEB应用程序定时执行任务是开发中常见的一种需求,用于在特定时间自动执行某些功能,比如记录系统日志、发送邮件通知等。在这个DEMO中,我们将探讨如何使用C#语言实现这样的功能,即使在网站关闭的情况下也能正常...

    JAVA自动执行任务[文].pdf

    在Java软件开发中,自动执行任务是一项常用的技术,特别是在Web应用程序中。Java提供了多种方式来实现定时任务,如Java的定时器(java.util.Timer)和Quartz库。这里我们将重点关注如何利用Servlet监听器...

    QD [v20230821] —— HTTP请求定时任务自动执行框架 base on HAR Editor-qd.zip

    4. 运行框架,框架将根据配置自动执行任务。 请注意,实际操作可能需要根据框架的文档和提供的指南进行调整。 通过QD [v20230821],开发者和自动化测试工程师可以轻松地构建和管理HTTP请求的定时任务,提高工作...

    Web应用脚本执行器

    ActiveX是一种由微软开发的技术,允许在浏览器中运行小型应用程序,这对于在网页上下文中执行复杂任务非常有用。 script.exe可能是一个Windows可执行文件,它可能是这个脚本执行器的核心部分,负责调用IE的ActiveX...

    在Java Web应用中如何实现任务有效调度

    在Java Web应用中,任务调度是一项关键功能,它允许开发者安排任务在特定时间或周期性地执行,以优化系统性能并提升用户体验。特别是在处理大数据、复杂计算或需要定期更新的场景下,如生成数据库报表,任务调度尤为...

    Spring定时任务实现(非Web项目)

    综上所述,Spring提供的定时任务功能使得开发者能够轻松地在非Web项目中实现复杂的时间驱动逻辑,无论是简单的定时执行还是基于Cron表达式的复杂调度,Spring都能提供强大的支持。通过合理配置和编程,我们可以创建...

    web定时器组件

    2. javax.servlet.Timer接口:在Servlet 3.0及以上版本中引入,允许在Web应用中创建和管理定时任务。它依赖于Servlet容器,如Tomcat或Jetty,因此更适用于Web环境。 3. Quartz Scheduler:一个强大且灵活的开源任务...

    java web定时任务 实例

    在Java Web应用中,为了使定时任务在服务器启动时自动运行,通常会将任务注入到一个Servlet容器初始化参数(如`ServletContextListener`)中。当Web应用加载时,监听器会启动任务。此外,Spring Boot提供了`@...

    Java定时器在Web中的应用.doc

    总结,Java定时器在Web中的应用通过`java.util.Timer`和`ServletContextListener`可以实现Web应用启动时自动执行定时任务的功能。这在诸如数据清理、统计分析、系统监控等场景中非常有用。同时,通过结合Spring等...

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

    在Java Web开发中,我们经常需要在服务器启动时自动加载特定的Servlet,并让它们执行一些初始化操作或定时任务。这通常涉及到对Web应用的配置文件`web.xml`以及Servlet类本身的编程。以下将详细讲解如何实现这个功能...

    Spring定时任务(Web项目)

    1. 定时任务通常在Spring容器启动后立即运行,因此需要确保Spring容器在Web应用启动时已完成初始化。 2. 如果定时任务涉及数据库操作,需要确保数据库连接已经建立并可用。 3. 为了防止并发执行,可使用`@...

    基于工作任务的Java_Web应用教程[覃国蓉][电子教案]

    Java Web应用运行在Web容器中,如Tomcat、Jetty等。Web容器负责加载和管理Servlet,处理HTTP请求,提供运行环境。Tomcat是最流行的开源Servlet容器,轻量级且易于部署,适用于开发和测试。 【部署与发布】 部署...

    基于thinkphp框架的定时器(定时执行任务)

    在开发Web应用时,有时我们需要实现一些特定任务的自动化执行,比如数据备份、发送邮件、统计分析等。ThinkPHP框架,作为一个广泛使用的PHP开发框架,提供了实现定时任务的能力。本篇将详细介绍如何在ThinkPHP中设置...

    Eclipse下Web应用开发.doc

    在Eclipse中进行Web应用开发是一项常见的任务,它涉及到一系列的配置步骤,包括开发环境的建立、Web服务器的安装和配置以及开发工具Eclipse的相关设置。以下是对这些步骤的详细说明: 1. **Web服务器Tomcat的安装和...

    java web项目自动打补丁包 web工程项目 自动化 补丁包

    2. **自动化**:在软件开发中,自动化是指利用工具或脚本自动执行重复性任务,以提高效率并减少人为错误。在这个场景中,自动化指的是自动打包和更新部署的过程。 3. **bat脚本**:在Windows操作系统中,批处理脚本...

    java定时任务

    通过使用 Java 定时任务,可以在指定的时间点执行特定的任务,从而实现自动化处理和批处理等功能。 在 Java 中,定时任务一般是通过 Timer 和 TimerTask 两个类来实现的。Timer 类负责管理定时任务的执行,而 ...

    web项目中定时删除某指定路径下的文件

    如果Web应用以非管理员用户运行,可能没有足够的权限删除某些文件,尤其是在系统目录下。因此,部署时要确保应用有足够的权限执行删除操作,或者将文件存放在可安全删除的目录。 5. **异常处理**: 文件操作可能...

    Spring3.0定时任务简单实例web工程

    由于我们的项目是一个Web工程,我们需要确保定时任务在Web应用启动时就开始执行。在传统的Servlet 2.x环境中,可以使用`ServletContextListener`监听器,在`contextInitialized`方法中启动任务调度。而在Servlet ...

    ASP.NET基于WEB的工作计划流程管理系统的设计与实现(源代码+论文).zip

    2. **任务创建**:用户可以创建新的工作计划,设定任务名称、描述、截止日期、优先级等属性,并指定执行人。 3. **任务分配**:管理员或负责人可以将任务分配给团队成员,确保责任明确,工作有序进行。 4. **进度...

Global site tag (gtag.js) - Google Analytics