`
圣诞王子
  • 浏览: 82794 次
  • 性别: 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>

 

 

 

文章来源:http://techpool.iteye.com/blog/505885

分享到:
评论

相关推荐

    linux下循环查找包含关键词文件里所有关键词的文件

    #该程序放置在任意地方,可以做成每分钟自动运行任务, #本文件在布衣生活www.yes81.net 网站服务器上应用,对保证网站的运行起到了一定安全防护的作用 #比如需要检查的是 /var/...

    citrix 中文管理操作手册

    在包含数千个对象的域中发布应用程序 39 使用发布应用程序向导发布资源 39 管理已发布资源的发布选项 40 选择资源类型和发布方法 40 定位要发布的应用程序 41 验证已发布应用程序的命令行参数 42 在内容与已发布应用...

    基于python数据库大作业-关于电影数据库的数据系统+源代码+文档说明+数据集+数据分析+操作报告

    开发一个基于WEB的数据库应用,这个应用是查询一个关于电影数据库的数据,数据部分信息经过了脱密处理,数据及相关数据文档由教师指定。开发的功能如下: 搜索任务 A 根据用户ID,搜索用户所看的电影名字和评分,...

    WEB服务器配置管理.pptx.pptx

    IIS是基于TCP/IP的Web应用系统,使用IIS可使计算机成为大容量、功能强大的Web服务器和FTP服务器。IIS不但可以通过使用HTTP协议传输信息,还可以提供服务,这样,IIS可以轻松地将信息发送到Internet上。 IIS的具体...

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    目前市场业务中在产品以及其他项目的认证和检测方面存在诸多不便,用户需要实地考察并频繁与检测单位沟通,填写繁琐的纸质检测报告、当面送递样品,对于检测环节中存在的问题难以及时交互并处理。市场上相应的检测...

    定时计划-Shutter Pro V4.5一款非常实用的多功能定时计划软件.exe

    结束指定的应用程序,即使它们在系统托盘中运行。 播放自定义声音 在屏幕上显示一个消息 断开拨号调制解调器 从 Windows 帐户注销, 锁定桌面或启动屏幕保护程序。 关闭电脑,重新启动,休眠,睡眠等。 除了用户友好...

    Brutexss(汉化版)

    这款脚本能自动进行插入XSS,而且可以自定义攻击载荷。 该脚本也同时提供包含了一些绕过各种WAF(Web应用防护...在执行任务时, BruteXSS是非常准确而且极少误报。 BruteXSS支持POST和GET请求,适应现代Web应用程序。

    Oracle 8i PL SQL高级程序设计

    3) 使用包DBMS_JOB调度PL/SQL任务在指定时间自动运行。 4) 使用包UTE_FILE直接读写操作系统文件。 5) 使用Pro*C和嵌入SQL语言编制外部例程。 6) 使用动态SQL语言在运行时创建并执行SQL和PL/SQL语句。 由于本书...

    多线程、高性能采集器爬虫.net版源码,可采ajax页面

    2)可自动执行的任务有:网络矿工采集任务、外部执行程序及存储过程; 5、网络雷达 网络雷达是一项非常有用的功能,网络雷达主要是根据用户预定规则实现对互联网数据的监控,并按照用于预定的规则进行预警。此...

    PLSQL详细说明手册

    3) 使用包DBMS_JOB调度PL/SQL任务在指定时间自动运行。 4) 使用包UTE_FILE直接读写操作系统文件。 5) 使用Pro*C和嵌入SQL语言编制外部例程。 6) 使用动态SQL语言在运行时创建并执行SQL和PL/SQL语句。 7) 允许数据库...

    C#微软培训资料

    18.2 在 C #代码中调用 C++和 VB 编写的组件 .240 18.3 版 本 控 制 .249 18.4 代 码 优 化 .252 18.5 小 结 .254 第五部分 附 录 .255 附录 A 关 键 字.255 附录 B 错 误 码.256 附录 C .Net 名字空间...

    oracle_8i_pl_sql高级程序设计

    3) 使用包DBMS_JOB调度PL/SQL任务在指定时间自动运行。 4) 使用包UTE_FILE直接读写操作系统文件。 5) 使用Pro*C和嵌入SQL语言编制外部例程。 6) 使用动态SQL语言在运行时创建并执行SQL和PL/SQL语句。 7) 允许数据库...

    Oracle 8i PL SQL高级程序设计(PDF)

    3) 使用包DBMS_JOB调度PL/SQL任务在指定时间自动运行。 4) 使用包UTE_FILE直接读写操作系统文件。 5) 使用Pro*C和嵌入SQL语言编制外部例程。 6) 使用动态SQL语言在运行时创建并执行SQL和PL/SQL语句。 7) 允许数据库...

    Oracle 8i PL_SQL高级程序设计

    3) 使用包DBMS_JOB调度PL/SQL任务在指定时间自动运行。 4) 使用包UTE_FILE直接读写操作系统文件。 5) 使用Pro*C和嵌入SQL语言编制外部例程。 6) 使用动态SQL语言在运行时创建并执行SQL和PL/SQL语句。 7) 允许数据库...

    asp.net知识库

    ASP.NET 2.0构建动态导航的Web应用程序(TreeView和Menu ) 体验.net2.0的优雅(3) -- 为您的 SiteMap 添加 控制转发功能 GridView控件使用经验 ASP.NET 2.0:弃用 DataGrid 吧,有新的网格控件了! ASP.NET2.0控件...

Global site tag (gtag.js) - Google Analytics