java scheduled每分钟执行一次 cron表达式
时间: 2023-10-23 19:23:10 浏览: 117
要使用Java的ScheduledExecutorService来实现每分钟执行一次cron表达式,可以按照以下步骤:
1. 创建一个ScheduledExecutorService对象。
```java
ScheduledExecutorService scheduledExecutorService = Executors.newSingleThreadScheduledExecutor();
```
2. 创建一个Runnable对象,该对象包含需要执行的任务。
```java
Runnable task = new Runnable() {
@Override
public void run() {
// 执行需要执行的任务
}
};
```
3. 创建一个cron表达式。
```java
String cronExpression = "0 * * * * ?";
```
这个表达式表示每分钟执行一次任务。
4. 使用CronTrigger创建一个Trigger对象。
```java
CronTrigger trigger = new CronTrigger(cronExpression);
```
5. 使用ScheduledExecutorService的schedule方法来安排任务。
```java
scheduledExecutorService.schedule(task, trigger);
```
完整的代码示例如下:
```java
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
import org.springframework.scheduling.Trigger;
import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler;
import org.springframework.scheduling.support.CronTrigger;
public class Main {
public static void main(String[] args) {
ScheduledExecutorService scheduledExecutorService = Executors.newSingleThreadScheduledExecutor();
Runnable task = new Runnable() {
@Override
public void run() {
System.out.println("Task executed at " + System.currentTimeMillis());
}
};
String cronExpression = "0 * * * * ?";
Trigger trigger = new CronTrigger(cronExpression);
scheduledExecutorService.schedule(task, trigger);
}
}
```
这个代码片段将每分钟执行一次任务,并在控制台上打印任务执行的时间戳。
阅读全文