@Scheduled 时间段执行
时间: 2023-10-14 09:27:36 浏览: 151
SpringBoot执行定时任务@Scheduled的方法
5星 · 资源好评率100%
您可以使用Spring框架的@Scheduled注解来实现定时任务。具体实现方式如下:
1. 在需要执行定时任务的方法上添加@Scheduled注解,并指定cron表达式、时间间隔等参数。
2. 在Spring配置文件中开启定时任务功能,添加以下代码:
```
<task:annotation-driven/>
```
或者在Java Config中添加以下代码:
```
@Configuration
@EnableScheduling
public class AppConfig {
// ...
}
```
3. 确保应用程序上下文中存在TaskExecutor bean,以便在执行定时任务时能够在单独的线程中运行。
```
@Bean(destroyMethod="shutdown")
public Executor taskExecutor() {
return Executors.newScheduledThreadPool(100);
}
```
上面的代码示例中,创建了一个线程池,将其配置为100个线程,并将其作为TaskExecutor bean注册到应用程序上下文中。
例如,以下代码可实现每天凌晨2点执行定时任务:
```
@Scheduled(cron="0 0 2 * * ?")
public void dailyTask() {
// execute the task
}
```
更多关于Spring框架定时任务的详细信息,请参阅Spring框架文档。
阅读全文