首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

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

2012-10-10 
在web应用中指定时间自动执行任务1、web监听器 ?package testimport java.util.Calendarimport java.util

在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;@Overridepublic 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

热点排行