文档章节

Spring Boot:在Spring Boot中使用定时任务

Element0506
 Element0506
发布于 2015/11/10 11:56
字数 342
阅读 1.5K
收藏 7

#程序员薪资揭榜#你做程序员几年了?月薪多少?发量还在么?>>>

本文主要介绍如何在Spring Boot中使用定时任务,假设你已经建好了一个基础的Spring Boot项目。首先,我们在项目中建立一个定时任务。

1.创建定时任务

package hello;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
@Component
public class ScheduledTasks {
    private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
    @Scheduled(fixedRate = 5000)
    public void reportCurrentTime() {
        System.out.println("The time is now " + dateFormat.format(new Date()));
    }
}

@Scheduled 注解用于标注这个方法是一个定时任务的方法,方法的执行周期是fixedRate,本例中是每隔5秒钟运行一次,我们也可以使用更灵活的设置方法@Scheduled(cron="...") ,用一个表达式来设置定时任务。

2.启用定时任务

接下来,我们在Application中设置启用定时任务功能。

package hello;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.scheduling.annotation.EnableScheduling;
@SpringBootApplication
@EnableScheduling
public class Application {
    public static void main(String[] args) throws Exception {
        SpringApplication.run(Application.class);
    }
}

其中 @EnableScheduling 注解的作用是发现注解@Scheduled的任务并后台执行。

运行Spring Boot,输出结果为如下,每5秒钟打印出当前时间。

The time is now 13:10:00
The time is now 13:10:05
The time is now 13:10:10
The time is now 13:10:15

参考资料

Spring定时任务的几种实现

http://blog.csdn.net/kaixuanfeng2012/article/details/14161285


几种任务调度的 Java 实现方法与比较
http://www.ibm.com/developerworks/cn/java/j-lo-taskschedule/


本文转载自:http://www.tuicool.com/articles/ayau2i

Element0506

Element0506

粉丝 12
博文 71
码字总数 19528
作品 0
南京
高级程序员
私信 提问
加载中

评论(0)

Spring Boot实践--定时任务两种(Schedule与Quartz整合)

Spring Boot实践--定时任务两种(Schedule与Quartz整合) 最近在项目中使用到定时任务,之前一直都是使用Quartz 来实现,最近看Spring 基础发现其实Spring 提供 Spring Schedule 可以帮助我们实...

spinachgit
2018/02/11
859
0
Spring Boot入门系列(八)整合定时任务Task,一秒搞定定时任务

前面介绍了Spring Boot 中的整合Redis缓存已经如何实现数据缓存功能。不清楚的朋友可以看看之前的文章:https://www.cnblogs.com/zhangweizhong/category/1657780.html。 今天主要讲解Sprin...

章为忠
03/24
0
0
1.spring boot起步之Hello World【从零开始学Spring Boot】

【视频&交流平台】 à SpringBoot视频 http://study.163.com/course/introduction.htm?courseId=1004329008&utmcampaign=commission&utmsource=400000000155061&utm_medium=share à Spring......

osc_x4nw3ehr
2018/04/01
14
0
【Java】Springboot-Quartz-分布式任务调度

Springboot-Quartz-分布式任务调度 springboot 调度 自定义并发百度搜索 spring-boot @Async 的使用、自定义Executor的配置方法 - CSDN博客 定制并发类(九)实现一个自定义的Lock类 | 并发编...

osc_qvqynsub
2018/01/11
54
0
Spring boot与Quartz实现任务定时提醒

客户经常会说到: “我们要做个进度把控,给每个审核节点加上时间限制,因为如果一个节点上的任务长时间不处理,那就超时啦!” “任务的时间限制是个很重要的东西,你们能不能做一个功能,当...

osc_0xf6ethk
2019/07/29
8
0

没有更多内容

加载失败,请刷新页面

加载更多

2020淘宝618理想生活列车自动领喵币脚本

自动收喵币 脚本 使用教程(测试安卓手机可用) 第一步安装 auto.js 第二步录入脚本 脚本 欢迎大家在评论区反馈,方便作者修改脚本 //by 丈二auto.waitFor();var height = device.height;...

osc_7oc4d1en
4分钟前
0
0
openlayers6聚合图(附源码下载)

前言 之前写过一篇openlayers4版本的地图聚合图文章,但是由于是封装一层 js代码写的,很多初学者看起来比较有点吃力,所以本篇文章重新写一篇地图热力图文章,直接基于最新版本openlayers6...

osc_4qu6doqx
5分钟前
0
0
查找感兴趣的基因、基因组区域是否有调控元件的在线网页工具EpiRegio

前几天,Nucleic Acids Res新发了一篇文章,关于查找基因组调控元件的网页在线工具EpiRegio:https://epiregio.de/。 具体来说,该工具有以下三个功能: 1)通过给定一系列的感兴趣基因,查找...

osc_doeya1ck
6分钟前
0
0
【Gradle教程】Gradle 入门

本文为我在学习群内分享时在B站直播时的文档,直播间地址 http://live.bilibili.com/22263819 PS:问一下,Linux下有什么好用的会议软件么? 知道的朋友烦请评论告知,感谢 00.简介 Gradle 是...

osc_cyn8i2xg
7分钟前
0
0
加密后的PDF文档怎么解除密码?迅捷PDF转换器手把手教你操作!

加密后的PDF文档怎么解除密码?很多人在拿到一些珍贵的文档之后,喜欢自己先进行阅读和学习,为了避免泄露甚至会给文档进行加密,在学习完成想要进行分享的时候却发现,不知道该如何解除PDF...

dawda
8分钟前
21
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部