

java定时任务的两种原生实现方式.
source link: http://www.hechunbo.com/index.php/archives/406.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

java定时任务
Spring Boot提供了@EnableScheduling和@Scheduled注解,用于支持定时任务的执行
方法一:利用scheduled注解
启动类加上@EnableScheduling, 这个注解内部@Import(SchedulingConfiguration.class) 引用了 SchedulingConfiguration类
@SpringBootApplication
@EnableScheduling
@Configuration
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
//注意在类上加@Component注解,标注这个类为Spring容器的Bean
@Component
public class Task {
@Scheduled(initialDelay = 1000, fixedRate = 10000)
public void run() {
System.out.println("Current time is :: " + Calendar.getInstance().getTime());
}
}
方法二:重写configureTasks方法
类要继承SchedulingConfigurer
@Component
public class ConfigTask implements SchedulingConfigurer {
//时间表达式 每2秒执行一次
private String cron = "0/2 * * * * ?";
private SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@Override
public void configureTasks(ScheduledTaskRegistrar scheduledTaskRegistrar) {
scheduledTaskRegistrar.addTriggerTask(new Runnable() {
@Override
public void run() {
System.out.println("当前时间为:" + sdf.format(new Date()));
}
}, new Trigger() {
@Override
public Date nextExecutionTime(TriggerContext triggerContext) {
CronTrigger cronTrigger = new CronTrigger(cron);
Date nextExecDate = cronTrigger.nextExecutionTime(triggerContext);
return nextExecDate;
}
});
}
public void setCron(String cron) {
this.cron = cron;
}
}
Recommend
-
14
定时任务应用非常广泛,Java提供的现有解决方案有很多。 本次主要讲schedule、quartz、xxl-job、shedlock等相关的代码实践。 一、SpringBoot使用Schedule 核心代码: @Component...
-
11
Quartz 概念Quartz 是任务调度的开源项目。Quartz 就是基于 Java 实现的任务调度框架。 Quartz 运行环境Quartz 可以运行嵌入在两一个独立式应用程序 Quartz 可以在应用程序服务器(或 Sevelet 容器) 内被实例化,并参...
-
3
在计算机的使用过程中,经常会有一些计划中的任务需要在将来的某个时间执行,linux中提供了一些方法来设定定时任务。 1、at 命令at从文件或标准输入中读取命令并在将来的一个时间执行,只执行一次。
-
9
本文适用语言:java 序章:定时任务实现方式 当下,java编码过程中,实现定时任务的方式主要以以下两种为主 spring框架的@Scheduled quzrtz框...
-
11
.NET 纯原生实现 Cron 定时任务执行,未依赖第三方组件 ...
-
6
.NET 纯原生实现 Cron 定时任务执行,未依赖第三方组件 (Timer 优化版) ...
-
5
学过定时任务,但是我忘了,忘得一干二净,害怕,一直听别人说: 你写一个定时任务就好了。 写个定时任务让他去爬取就行了。 我不会,所以现在得补回来了,欠下的终究要还的,/(ㄒoㄒ)/~~
-
4
用xxl-job做后台任务管理, 主要是快速解决定时任务的HA问题, 项目代码量不大, 功能精简, 没有特殊依赖. 因为产品中用到了这个项目, 上午花了点时间研究了一下运行机制. 把看到的记一下. <!-- http://repo1.maven...
-
6
java | 定时任务 | 犀牛的博客 犀牛的博客 姑苏城外...
-
8
聊聊项目中定时任务的处理方式 一个项目中一般...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK