java web项目定时任务

好久没写新文章了,今天项目遇到一个定时任务的需求,写下来希望能帮助更多的技术爱好者。

第一步:
配置项目的web.xml

    
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>weFlowdisplay-name>
  <welcome-file-list>
    <welcome-file>index.htmlwelcome-file>
    <welcome-file>index.htmwelcome-file>
    <welcome-file>index.jspwelcome-file>
    <welcome-file>default.htmlwelcome-file>
    <welcome-file>default.htmwelcome-file>
    <welcome-file>default.jspwelcome-file>
  welcome-file-list>

  
    <listener>
        <listener-class>
            com.zykj.util.DataTaskListener
        listener-class>
        
    listener>


web-app>

第二步:

package com.zykj.util;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;

public class DataTaskListener implements ServletContextListener {
    public void contextInitialized(ServletContextEvent event) {
        new TimerManager();//TimerManager
    }
    public void contextDestroyed(ServletContextEvent event) {

    }

}

第三步:

package com.zykj.util;

import java.util.Timer;

/**
 * 定时任务
 * 
 * @author 张亮 2017年5月12日 上午11:38:17
 */
public class TimerManager {
    // 时间间隔
    private static final long PERIOD_DAY = 60 * 1000;// 每分钟执行一次,,这里改成你需要的间隔时间
    public TimerManager() {
        Timer timer = new Timer();
        long date=0;
        DataTimerTask task = new DataTimerTask();
        timer.schedule(task, date, PERIOD_DAY);
    }
}

第四步:

package com.zykj.util;

import java.util.TimerTask;

public class DataTimerTask extends TimerTask {
    @Override
    public void run() {
        try {
            // 在这里写你要执行的内容
            System.out.println("定时任务执行*********************");
        } catch (Exception e) {
            System.err.println(e);
        }
    }
}

最好效果图:
java web项目定时任务_第1张图片

有什么问题加群:472148690

你可能感兴趣的:(java)