Spring 定时任务框架详解(1)——快速入门
时间:2022-07-24
本文章向大家介绍Spring 定时任务框架详解(1)——快速入门,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
一. 定时任务框架简介
- Spring 定时任务框架主要基于JDK原生的线程池ScheduleExecutorService,仅通过一些简单的配置或者注解,即可实现强大的定时任务功能。
二.快速入门
本例基于SpringBoot,以注解形式实现简单的Spring定时任务入门程序:
- Maven依赖:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.1.RELEASE</version>
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
</dependencies>
- 在启动类上使用@EnableScheduling开启定时任务配置
@SpringBootApplication
@EnableScheduling
public class ScheduleApplication {
public static void main(String[] args) {
SpringApplication.run(ScheduleApplication.class,args);
}
}
- 在需要执行定时任务的方法上添加@Scheduled注解执行定时任务(注:方法必须为无参)
@Scheduled(fixedRate = 5 * 1000)
private void schedule(){
System.err.println("Do Schedule Task ...");
}
- 启动SpringBoot项目,可以看到定时任务每5秒钟执行一次
三. 总结
由此可见,基于Spring的定时任务机制,可以十分方便地执行定时任务。下一节将结合源码,详细分析Spring的定时任务机制。
- 关于收缩数据文件的尝试(r5笔记第34天)
- 搭建dataguard碰到的几个小问题(r5笔记第33天)
- TP-LINK 远程代码执行漏洞 CVE-2017-13772 趣谈
- 执行计划中的COLLECTION ITERATOR PICKLER FETCH导致的性能问题 (r5笔记第49天)
- dataguard switchover的自动化脚本实现 (r5笔记第48天)
- 曲折的dump导入及问题分析(r5笔记第47天)
- 对一道if-else相关的程序题的简单分析(r5笔记第45天)
- 持续近7个小时的索引扫描的查询优化分析 (r5笔记第44天)
- 04.Java对象和类
- 关于Oracle数据恢复的两个临界点(r5笔记第42天)
- 关于提问的一些建议(r5笔记第41天)
- shell中echo的显示格式 (r5笔记第58天)
- springboot 入门教程(5) 基于ssm框架的crud操作(前端部分-附源码)
- springboot入门(4)_web开发
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- Centos6.x服务器配置jdk+tomcat+mysql环境(jsp+mysql)
- Linux的压缩和解压缩的方法总结
- RTSP/GB28181/HIKSDK/Ehome协议视频融合平台EasyCVR编译C++报参见“XXX”的声明错误
- 详解 Linux 常用目录的作用
- CentOS6环境下搭建路由器的方法
- centos7下NFS使用与配置的步骤
- 基于DOM4J的XML文件解析类
- Win7安装和配置Apache2.4服务器的详细方法
- shiro会话管理示例代码
- Windows Apache2.4 VC9(ApacheHaus)详细安装配置教程
- 在centos 7中安装配置k8s集群的步骤详解
- Centos7.2 编译安装方式搭建 phpMyAdmin
- CentOS 6.5 web服务器apache的安装与基本设置
- Linux本机与服务器文件互传及Linux服务器文件上传下载命令写法
- linux利用read命令获取变量中的值