【Java】@Scheduled定时任务

创建定时任务很简单,只需要在方法上面,使用@Scheduled注解即可。

前置条件:
1、在启动类Application上面添加注解@EnableScheduling
2、定时任务方法所在的类上面需要有@Component注解
3、在启动类Application上面指定的扫描路径要包含定时任务所在类位置。
@ComponentScan({“com.xx.xx.*”,“com.yy.yy.*”})

@SpringBootApplication
@EnableScheduling
@ComponeScan({"com.xx.xx.*","com.yy.yy.*"})
public class Application {
	...
}

1 cron表达式指定定时器执行时间

@Component
public class ScheduldJob {

	// 固定每天1点执行,无论上一次执行完没有,到时间会再执行。
	@Scheduled(cron = "0 0 1/1 * ?")
	public void task() {...}
}

可根据不同的需求定义不同的cron表达式达到执行效果。


2 fixedRate 和 fixedRateString 指定间隔时间

这两个参数是一个效果,只是fixedRate的值是long型,fixedRateString的值是字符串型。
单位毫秒。

// 每间隔两小时执行一次。任务在服务启动时会执行一次,在上一次执行开始之后,再间隔两小时执行。注意是从上一次开始执行算的间隔时间。
@Scheduled(fixedRateString = "7200000")
public void test() {...}
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值