zoukankan      html  css  js  c++  java
  • Java定时任务示例

    package com.my.timer;
    
    import java.util.Date;
    import java.util.TimerTask;
    
    public class myTask extends TimerTask {
    
        /**
         * 定时任务调用的方法,即处理业务的方法
         */
        @Override
        public void run() {
            System.out.println("定时任务执行了:" + new Date().toLocaleString());
        }
    
    }
    package com.my.timer;
    
    import java.util.Calendar;
    import java.util.Date;
    import java.util.Timer;
    import java.util.TimerTask;
    
    public class TestTimer {
    
        public static void main(String[] args) {
    
            TimerTask task = new myTask();
            Timer timer = new Timer();
    
            // 1.定制每天的1:00执行一次,
            Calendar calendar = Calendar.getInstance();
            calendar.set(Calendar.HOUR_OF_DAY, 1);
            calendar.set(Calendar.MINUTE, 0);
            calendar.set(Calendar.SECOND, 0);
            Date date = calendar.getTime();
    
            // 如果第一次执行定时任务的时间 小于 当前的时间任务会立即执行
            // 因此要在 第一次执行定时任务的时间 加一天,以便此任务在下个时间点执行。
            if (date.before(new Date())) {
                date = addDay(date, 1);
            }
    
            // timer.schedule(task, date);
    
            // 2.每天的date时刻执行task,每隔2秒重复执行
            // timer.schedule(task, date, 2 * 1000);
    
            // 3.五秒后执行一次
            // timer.schedule(task, 5 * 1000);
    
            // 4.五秒后执行一次,之后每隔1秒执行一次
            timer.schedule(task, 5 * 1000, 1 * 1000);
    
        }
    
        // 增加或减少天数
        public static Date addDay(Date date, int num) {
            Calendar startDT = Calendar.getInstance();
            startDT.setTime(date);
            startDT.add(Calendar.DAY_OF_MONTH, num);
            return startDT.getTime();
        }
    
    }
  • 相关阅读:
    Netty相关知识积累
    Java内存管理
    使用nginx-upload-module搭建文件上传服务器
    mysql 5.7自动安装脚本
    CDH5集群搭建
    Linux常用命令
    编译原理要点四
    编译原理要点三
    编译原理要点二:
    编译原理要点
  • 原文地址:https://www.cnblogs.com/qqzy168/p/3782472.html
Copyright © 2011-2022 走看看