springboot集成定时任务功能

参考文章:http://www.ityouknow.com/springboot/2016/12/02/spring-boot-scheduler.html

1.集成pom包依赖

<dependencies>
	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter</artifactId>
	</dependency>
	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-test</artifactId>
		<scope>test</scope>
	</dependency>
</dependencies>

2.在启动类中添加注释

在启动类中添加@EnableScheduling即可开启定时

@SpringBootApplication
@EnableScheduling
public class Application {

	public static void main(String[] args) {
		SpringApplication.run(Application.class, args);
	}
}

3.创建任意的一个定时线程实现类

@Component
public class SchedulerTask {

    @Scheduled(cron = "0 0,30 * * * *")  //cron接受cron表达式,根据cron表达式确定定时规则
    public void schedulerTask() {
        // todo 业务
    }
}

cron表达式可以参考这篇博文:https://www.jianshu.com/p/e9ce1a7e1ed1

4.fixedRate 参数说明

@Scheduled(fixedRate = 6000) :上一次开始执行时间点之后6秒再执行
@Scheduled(fixedDelay = 6000) :上一次执行完毕时间点之后6秒再执行
@Scheduled(initialDelay=1000, fixedRate=6000) :第一次延迟1秒后执行,之后按 fixedRate 的规则每6秒执行一次

上一篇:@Scheduled cron表达式


下一篇:Spring Boot @Scheduled 定时任务实战