Spring Boot入门教程:十二、spring boot 2.0 定时任务

 在调度任务的类上加上@EnableScheduling注解 开启任务调度,直接上代码

package com.ldy.bootv2.demo.job;

import javax.annotation.PostConstruct;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;


@Component
@EnableScheduling  
public class TaskScheduled {
	
	private static Logger logger = LoggerFactory.getLogger(TaskScheduled.class);
	
	/**
	 * @方法名: init
* @描述: 项目启动初始化执行
*/ @PostConstruct public void init() { //TODO 这里写你要执行的代码 logger.info("init:初始任务开始执行,只执行一次"); } /** *

方法名: execute

*

描述: 定时任务,上一次开始执行时间点之后10秒再执行

*/ @Scheduled(fixedRate = 1000*10) public void execute1() { //TODO 这里写你要执行的代码 logger.info("execute1:10秒执行一次,下一次执行时间是当前执行时间开始之后10秒"); try { Thread.sleep(1000*5);//睡眠5秒观察执行情况 } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } /** *

方法名: execute

*

描述: 定时任务,上一次执行完毕时间点之后10秒再执行

*/ @Scheduled(fixedDelay = 1000*10) public void execute2() { //TODO 这里写你要执行的代码 logger.info("execute2:10秒执行一次,下一次执行时间是当前执行完成时间之后10秒"); try { Thread.sleep(1000*5);//睡眠5秒观察执行情况 } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }

启动项目,观察调度情况如图

Spring Boot入门教程:十二、spring boot 2.0 定时任务_第1张图片

你可能感兴趣的:(spring,boot,spring,boot,2.0,入门实战教程)