0

我需要强制我的 java 应用程序在特定日期和时间执行几个操作。场景如下:

1- user set a specific time and frequency (every day, every month)
2- system starts a trigger for the request

3- once that pre-defined frequency and time are reached 
 3.1 - system performs the required actions that are kept in a method

我找到了这个答案,但无法让它发挥作用。

一个例子将不胜感激。

4

3 回答 3

3

有多个 java 调度程序框架可用于在您指定的时间、间隔、周期性执行任务。阿帕奇石英是常用的一种。

或者干脆使用 java ScheduledExecutorService

于 2013-07-25T04:14:25.460 回答
2

Quartz 库对此非常有用。

如何使用 Quartz:参考这个http://www.mkyong.com/tutorials/quartz-scheduler-tutorial/

于 2013-07-25T04:15:56.717 回答
2

您可以使用jdk 本身的Executor,这里是启动示例:

 ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
 ScheduledFuture<?> handle scheduler.scheduleAtFixedRate(new Runnable() {
            public void run() { System.out.println("your code is here :)"); }
        }, 1, 100, TimeUnit.MINUT);

因此此代码在 1 分钟后开始运行,并在每 100 分钟后运行。

为了以后取消,你会做handle.cancel(true)

这里阅读

于 2013-07-25T04:18:53.533 回答