文档章节

利用springboot实现定时任务

啊哈关关
 啊哈关关
发布于 2017/05/31 15:15
字数 423
阅读 19
收藏 0

1.Application文件

package hello;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.scheduling.annotation.EnableScheduling;

/**
 * Created by guanguan on 17/5/31.
 */
@SpringBootApplication
@EnableScheduling
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class);
    }
}

2.定时任务ScheduledTasks文件

package hello;

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;

/**
 * Created by guanguan on 17/5/31.
 */
@Component
public class ScheduledTasks {

    private static final Logger log = LoggerFactory.getLogger(ScheduledTasks.class);
    private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
    
    @Scheduled(fixedRate = 5000) //表示间隔时间为5s,即为每5s执行一次
    public void reportCurrentTime(){
        log.info("The time is now{} ",dateFormat.format(new Date()));
        System.out.println("hello ");
    }


}

3.此例子中采用了fixedRate,当然也可用cron

  • "0 0 * * * *" = the top of every hour of every day.表示每天的整点数执行一次
    "*/10 * * * * *" = every ten seconds. 表示每间隔10s执行一次
    "0 0 8-10 * * *" = 8, 9 and 10 o'clock of every day.表示每天的8:00,9:00,10:00执行
    "0 0 6,19 * * *" = 6:00 AM and 7:00 PM every day.表示每天的上午6点,下午7点执行
    "0 0/30 8-10 * * *" = 8:00, 8:30, 9:00, 9:30, 10:00 and 10:30 every day.表示每天的8点到10点时间段内每隔30分钟执行一次
    "0 0 9-17 * * MON-FRI" = on the hour nine-to-five weekdays 表示周一到周五的9:00到下午5:00每整点数执行一次
    "0 0 0 25 12 ?" = every Christmas Day at midnight 表示12月25号零点执行一次

     

 

共6个字段,分别代表秒、分、时、天、月、星期或者年

字段   允许值   允许的特殊字符
秒    0-59    , - * /
分    0-59    , - * /
小时    0-23    , - * /
日期    1-31    , - * ? / L W C
月份    1-12 或者 JAN-DEC    , - * /
星期    1-7 或者 SUN-SAT    , - * ? / L C #
年(可选)    留空, 1970-2099    , - * / 
- 区间  
* 通配符  
? 你不想设置那个字段

 

© 著作权归作者所有

共有 人打赏支持
啊哈关关
粉丝 7
博文 156
码字总数 72812
作品 0
深圳
程序员
Spring Boot 全家桶 - SpringBootBucket

Spring Boot 现在已经成为Java 开发领域的一颗璀璨明珠,它本身是包容万象的,可以跟各种技术集成。 本项目对目前Web开发中常用的各个技术,通过和SpringBoot的集成,并且对各种技术通过“一...

一刀
03/05
0
1
恒宇少年/spring-boot-chapter

简书整套文档以及源码解析 专题 专题名称 专题描述 001 Spring Boot 核心技术 讲解SpringBoot一些企业级层面的核心组件 002 Spring Cloud 核心技术 对Spring Cloud核心技术全面讲解 003 Quer...

恒宇少年
04/19
0
0
Netty(一) SpringBoot 整合长连接心跳机制

前言 Netty 是一个高性能的 NIO 网络框架,本文基于 SpringBoot 以常见的心跳机制来认识 Netty。 最终能达到的效果: 客户端每隔 N 秒检测是否需要发送心跳。 服务端也每隔 N 秒检测是否需要...

crossoverJie
05/28
0
0
springboot(二)进阶篇

继之前的springboot(一)入门篇 ,本次主要讲springboot的一些其他特性,springboot内容很多,后续会持续更新. 多数据源 log4j日志 aop面向切面编程 缓存 定时任务 异步任务 自定义参数 多环境的...

zhuyuansj
2017/10/07
0
0
【SpringBoot2.0系列10】SpringBoot之@Scheduled任务调度

【SpringBoot2.0系列01】初识SpringBoot 【SpringBoot2.0系列02】SpringBoot之使用Thymeleaf视图模板 【SpringBoot2.0系列03】SpringBoot之使用freemark视图模板 【SpringBoot2.0系列04】Spr...

余空啊
08/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

使用JavaScript ES6的新特性计算Fibonacci(非波拉契数列)

程序员面试系列 Java面试系列-webapp文件夹和WebContent文件夹的区别? 程序员面试系列:Spring MVC能响应HTTP请求的原因? Java程序员面试系列-什么是Java Marker Interface(标记接口) 使...

JerryWang_SAP
7分钟前
0
0
docker安装redis、mongodb、mysql等

一、启动docker服务,设置镜像: systemctl start dockervi /etc/docker/daemon.json{ "registry-mirrors": ["https://registry.docker-cn.com"]} 二、下拉镜像: 在镜像中心h...

狼王黄师傅
31分钟前
0
0
deepin系统使用deepin-wine安装exe程序

deepin自带原生deepin-wine使用命令如下: deepin-wine QQBrowser.exedeepin-wine QQMusicSetup.exe 默认安装的快捷方式位置: /root/.wine/drive_c/'Program Files'/Tencent/QQBrowser/......

临江仙卜算子
55分钟前
4
0
快速get到学习Linux操作系统的点

快速get到学习Linux操作系统的点 Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux能够运行主要的UNIX工具软件...

linuxCool
今天
3
0
聊聊:Linux分区的那些方案

安装linux的整体步骤其实比较简单,唯一可能值得说明的地方,大概就是linux的分区了。 下面来给大家推荐一些分区方案。 1 分两个区 实际上,很多时候我们只需要分两个区:`/`和交换分区,日常...

Linux就该这么学
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部