星空网 > 软件开发 > Java

Java实现定时任务的三种简单方法

第一种方法:

  /**   * 先定义一个任务每天执行的时间点,再写一个死循环,不断地拿当前时间和事先定义的时间去比对,若到时间则执行任务   */  @Test  public void test1() {    String taskTime = "13:43:10";    SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");    while (true) {      Date date = new Date();      if (sdf.format(date).equals(taskTime)) {        System.out.println("任务开始执行!");        try {          // 这里让线程睡眠一秒钟的原因是:若任务在1秒内执行完的话,会导致任务执行多遍,          // 任务执行完睡眠一秒钟,保证任务不会重复执行          Thread.sleep(1000);        } catch (InterruptedException e) {          e.printStackTrace();        }      }    }  }

第二种方法:若想测试,请一定用main方法,Test不行

  /**   * 利用ScheduledExecutorService这个接口实现   */  public static void main(String[] args) {    Runnable runnable = new Runnable() {      @Override      public void run() {        System.out.println("任务开始执行!");      }    };    ScheduledExecutorService sch = Executors.newSingleThreadScheduledExecutor();    // 第一个参数是要执行的线程    // 第二个参数是初始延迟时间    // 第三个参数是任务执行的间隔时间    // 第四个参数是计时单位,可以是时分秒等    sch.scheduleAtFixedRate(runnable, 10, 2, TimeUnit.SECONDS);  }

第三种方法:若想测试,请一定用main方法,Test不行

public static void main(String[] args) {    TimerTask task = new TimerTask() {      @Override      public void run() {        System.out.println("任务开始执行!");      }    };    Calendar cal = Calendar.getInstance();    int year = cal.get(Calendar.YEAR);    int month = cal.get(Calendar.MONTH);    int day = cal.get(Calendar.DAY_OF_MONTH);    cal.set(year, month, day, 14, 1, 0);    Date date = cal.getTime();    Timer timer = new Timer();    timer.schedule(task, date, 2000);  }

 




原标题:Java实现定时任务的三种简单方法

关键词:JAVA

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

review政策:https://www.goluckyvip.com/tag/3813.html
美国TikTok小黄车:https://www.goluckyvip.com/tag/38130.html
美国usps专线:https://www.goluckyvip.com/tag/38131.html
美国版权:https://www.goluckyvip.com/tag/38133.html
美国本土TikTok小店:https://www.goluckyvip.com/tag/38134.html
美国本土海外仓:https://www.goluckyvip.com/tag/38135.html
恐怖游轮2002 恐怖游轮2022:https://www.vstour.cn/a/365178.html
时尚电商平台Meesho拟融资3亿美元!:https://www.kjdsnews.com/a/1836524.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流