1.概念
所谓计划任务就是定时任务,很常用到一个功能
2.使用
(1)在配置类注解@EnableScheduling来开启对计划任务的支持
(2)在要执行计划任务的方法上注解@Scheduled声明这是一个计划任务
3.示例
package highlight_spring4.chi3.taskScheduler;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;
@Service
public class ScheduleTaskService {
private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
@Scheduled(fixedRate = 5000)
public void reportCurrentTime(){
System.out.println("每隔五秒执行一次:"+dateFormat.format(new Date()));
}
@Scheduled(cron = "0 28 11 ? * *")//按照指定时间每天0点28分11秒执行
public void fixTimeExecution(){
System.out.println("在指定时间"+dateFormat.format(new Date())+"执行");
}
}
package highlight_spring4.chi3.taskScheduler;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.scheduling.annotation.EnableScheduling;
/**
* 配置类
*/
@Configuration
@ComponentScan("highlight_spring4.chi3.taskScheduler")
@EnableScheduling
public class TaskSchedulerConfig {
}
package highlight_spring4.chi3.taskScheduler;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
/**
* 运行类
*/
public class Main {
public static void main(String[] args) {
AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(TaskSchedulerConfig.class);
}
}