spring boot 定时任务

 在调度任务的类上加上@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<br>
	 * @描述: 项目启动初始化执行<br>
	 */
	@PostConstruct
	public void init() {
		//TODO 这里写你要执行的代码
		logger.info("init:初始任务开始执行,只执行一次");
	}
	
	/**
	 * <p>方法名: execute</p>
	 * <p>描述: 定时任务,上一次开始执行时间点之后10秒再执行</p>
	 */
	@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();
		}
	}
	
	/**
	 * <p>方法名: execute</p>
	 * <p>描述: 定时任务,上一次执行完毕时间点之后10秒再执行</p>
	 */
	@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();
		}
	}

}

@Scheduled参数常用参数格式请参考Spring框架@Scheduled参数说明

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值