Spring Boot文档阅读笔记-Scheduling Tasks
这篇博文将说明,如何一步一步完成Spring的任务调度功能。
主要是使用@Scheduled注解,完成每5秒打印当前时间。
首先在Maven中增加awaitility依赖包
-
<dependency>
-
<groupId>org.awaitility</groupId>
-
<artifactId>awaitility</artifactId>
-
<version>3.1.2</version>
-
<scope>test</scope>
-
</dependency>
整体Maven如下:
-
-
<project xmlns="http://maven.apache.org/POM/4.0.0"
-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
<modelVersion>4.0.0</modelVersion>
-
-
<groupId>org.example</groupId>
-
<artifactId>SchedulingTasks</artifactId>
-
<version>1.0-SNAPSHOT</version>
-
-
<dependencies>
-
-
<dependency>
-
<groupId>org.springframework.boot</groupId>
-
<artifactId>spring-boot-starter-web</artifactId>
-
<version>2.1.10.RELEASE</version>
-
</dependency>
-
-
<dependency>
-
<groupId>org.awaitility</groupId>
-
<artifactId>awaitility</artifactId>
-
<version>3.1.2</version>
-
<scope>test</scope>
-
</dependency>
-
-
</dependencies>
-
-
</project>
创建调度调度任务的类,ScheduleTasks.java
-
package cn.it1995.component;
-
-
import org.slf4j.Logger;
-
import org.slf4j.LoggerFactory;
-
import org.springframework.scheduling.annotation.Scheduled;
-
import org.springframework.stereotype.Component;
-
-
import java.text.SimpleDateFormat;
-
import java.util.Date;
-
-
-
public class ScheduledTasks {
-
-
private static final Logger log = LoggerFactory.getLogger(ScheduledTasks.class);
-
-
private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
-
-
-
public void reportCurrentTime(){
-
-
log.info("The time is now {}", dateFormat.format(new Date()));
-
}
-
}
@Scheduled注解说明了在合适调用,比如fixedDelay说明每多少毫秒调用一次。这里还有其他选项,比如使用corn,这里全称应该是crontab,也就是定时任务,如@Scheduled(cron="...")
-
package cn.it1995;
-
-
import org.springframework.boot.SpringApplication;
-
import org.springframework.boot.autoconfigure.SpringBootApplication;
-
import org.springframework.scheduling.annotation.EnableScheduling;
-
-
-
-
public class Main {
-
-
public static void main(String[] args){
-
-
SpringApplication.run(Main.class, args);
-
}
-
}
最后在@SpringBootApplication注解的地方,也就是main方法的地方,加上@EnableScheduling注解,这个注解的作用是使得后台任务调用执行被创建。
代码如下:Main.java
-
package cn.it1995;
-
-
import org.springframework.boot.SpringApplication;
-
import org.springframework.boot.autoconfigure.SpringBootApplication;
-
import org.springframework.scheduling.annotation.EnableScheduling;
-
-
-
-
public class Main {
-
-
public static void main(String[] args){
-
-
SpringApplication.run(Main.class, args);
-
}
-
}
运行截图如下:
代码打包如下:
Java/SchedulingTasks at master · fengfanchen/Java · GitHub
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgaahfe
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13