TimerServlet类:
package com.fesc.pubservlet;
/**
*
Title:****(V5.0)
Description:公共的Servlet,定时执行程序,本
* Servlet必须在服务器启动时即被装载,滞留于内存
Copyright: Copyright (c) 2003
Company: ***
Create Time: 2004-3-27
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class TimerServlet extends HttpServlet {
public void init(ServletConfig config) throws ServletException{
super.init(config);
System.out.println("Init Success!!!!!!!!!!");
WrapperTimer wrapperTimer=new WrapperTimer();
wrapperTimer.scheduleTask();
}
}
TimerServlet类调用得java中Timer类:
package com.***;
import java.util.*;
import java.sql.*;
import java.io.*;
import java.text.*;
public class WrapperTimer {
//设定启动时间:24小时制
private int iHour=1,iMinute=0,iSecond=0;//凌晨1点启动
private Timer timer = null;
private TimerTask timerTask = null;
private final static int PERIOD = 1 * 60 * 60 * 1000;
private Calendar cal=Calendar.getInstance();
public WrapperTimer() {
timer = new Timer();
timerTask = new MyTask();
}
public void scheduleTask() {
//Calendar cal = Calendar.getInstance();
cal.getTime();
cal.set(cal.HOUR_OF_DAY,iHour);
cal.set(cal.MINUTE,iMinute);
cal.set(cal.SECOND,iSecond);
timer.schedule(timerTask, cal.getTime(), PERIOD);
}
public void cancel() {
timer.cancel();
}
private class MyTask extends TimerTask {
public void run() {
Calendar curCal=Calendar.getInstance(); //当前时间
if(( curCal.getTime().getHours()==iHour)&&
(curCal.getTime().getMinutes()>=iMinute)){
System.out.println("定时程序启动:");
************//调用你要做的动作
System.out.println("定时程序执行完毕!");
}else{
//System.out.println("时间不对");
}
}
}
}
↑返回目录
前一篇: Java-J2EE中文问题终极解决之道
后一篇: B/S系统权限控制的一种简单方法