Spring任务计划

  从Spring3.1开始,计划任务在Spring中的实现变得异常的简单。首先通过在配置类注解@EnableScheduling来开启对计划任务的支持,
然后在要执行计划任务的方法上注解@Scheduled,声明这是一个计划任务。
Spring通过@Scheduled支持多种类型的计划任务,包含cron、fixDelay、fixRate等。

实例

1.计划任务执行类。

package com.wisely.highlight_spring4.ch3.taskscheduler;

import java.text.SimpleDateFormat;import java.util.Date;

import org.springframework.scheduling.annotation.Scheduled;import org.springframework.stereotype.Service;

@Servicepublic class ScheduledTaskService {

     private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");

     @Scheduled(fixedRate = 5000) //1     public void reportCurrentTime() {          System.out.println("每隔五秒执行一次 " + dateFormat.format(new Date()));      }

     @Scheduled(cron = "0 28 11 ? * *"  ) //2     public void fixTimeExecution(){         System.out.println("在指定时间 " + dateFormat.format(new Date())+"执行");     }}

代码解释通过@Scheduled声明该方法是计划任务,使用fixedRate属性每隔固定时间执行。使用cron属性可按照指定时间执行,本例指的是每天11点28分执行;cron是unix和unix(Linux)系统下的定时任务。

配置类。
package com.wisely.highlight_spring4.ch3.taskscheduler;

import org.springframework.context.annotation.ComponentScan;import org.springframework.context.annotation.Configuration;import org.springframework.scheduling.annotation.EnableScheduling;

@Configuration@ComponentScan("com.wisely.highlight_spring4.ch3.taskscheduler")@EnableScheduling //1public class TaskSchedulerConfig {

}

代码解释通过@EnableScheduling注解开启对计划任务的支持。

运行
package com.wisely.highlight_spring4.ch3.taskscheduler;

import org.springframework.context.annotation.AnnotationConfigApplicationContext;

public class Main {   public static void main(String[] args) {       AnnotationConfigApplicationContext context =                   new AnnotationConfigApplicationContext(TaskSchedulerConfig.class);   }}


 
时间: 2024-10-10 21:28:23

Spring任务计划的相关文章

Spring冲刺计划会议

一.团队会议计划 短期内通过进一步的市场调研和需求分析,更加准确的把握用户的需求,确定软件总体功能的方向.根据团队的成员各自擅长的知识和技能,进行初步的任务分配,实现软件的基本框架. 二.团队会议过程 我们团队四人于本周三下午三点在基教开展了一个小组会议,首先对软件将要实现的各项功能进行了具体的分析,然后又对整个项目的backlog进行了梳理,最后通过自愿的原则进行了工作认领. 三.团队的backlog 1.用户界面的设计,包括登录注册界面,商品信息界面,用户信息反馈界面等等. 2.后台管理,包

spring冲刺计划

会议召开时间表 日期 时间 内容 05/09 21:00-22:00 讨论题目(未果) 05/10 21:00-21:30 确定题目(网络助手) 05/13 21:00-21:45 讨论软件页面设计 05/17 21:00-22:00 划分任务,确定任务难度 05/19 21:00-21:40 细化任务,并进行认领 05/21 21:00-21:30 讨论遇到的困难 05/22 21:00-21:40 讨论个人计划 任务划分及认领情况 姓名 认领任务 杜晓松 设计IP快速修改,备份记录 刘中睿

spring配置计划任务管理器

<!-- 计划任务管理器 --> <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers"> <list> <ref bean="clearLogTrigger" /> </list> </property> </be

spring scheduling 计划任务

执行计划任务 首先定义要执行的类 @scheulde加在方法上,代表此方法是计划任务 加在类上,代表所有的方法都是计划任务 package com.example.demo.qin.scheduling; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Service; import java.text.SimpleDateFormat; impor

关于2017,1,1-2017,1,15的 spring mvc计划

第一章:1.1-1.2 第二章:1.3 第三章:1.4 第四章:1.5 第五章:1.6-1.7 第六章:1.8 第七章:1.9 第八章:1.10 第九章:1.11-1.12 第十章:1.13 第十一章:1.14 第十二章:1.15

分组声明

亲爱的助教,你好:    我是软件2班的陈汝婷同学.之前是在WP这个组的.后来因为一些原因,我和练丽云同学被分组.然后我和丽云同学(花花)果断一组,证明我们是可以的.现由于分组需要向您说明作业情况. 一.分组成员  因为是临时分组,所以我们的任务比较多,比较急.为了按时有质量的完成每一次作业,我和花花进行了写博客任务分工.   二.任务分工 1.任务如图所示: 我:1.用户调研:http://www.cnblogs.com/chenruting/p/4584751.html 4.描述目的典型用户

Sprint会议-初步组织划分

主题:Spring冲刺计划会议,组员已认领方式领取任务,对个人任务进行详细划分. 日期:2015.4.26 地点:学一食堂二楼 与会人员:王雪青.陆宇.徐擎天.张文冬.赵建松 索引表 因早期任务的认领我们已经进行过了,这次会议进程得以比较好的进行. 至于任务的细分在索引卡片上我们尽最大的努力,对其进行细化.为的是我们在之后的各个模块进行连接的时候我们能够更好的拼接,给后续的工作给予最大的方便,减少不必要的麻烦. 会议中我们确定了在冲刺阶段我们每日站立会议初步定在6点50分,地点学一食堂的门口.

Tomcat 关闭时报错

最近tomcat走普通的关闭方式无法正常关闭,会报一些Error,用的是Tomcat7,据说是Tomcat7在关闭的时候加了一些检查线程泄漏内存泄露的东西 总结起来,在我项目中有这么几个原因会导致关闭不了: 1.使用了@Scheduled注解 最后查出来原因是因为在bean里面使用了  @Scheduled    注解,而Tomcat关闭的时候,spring并不能主动关闭这些Schedule,也就是说这注解有缺陷,慎用. 替代方法就是放弃spring的Scheduled注解方式使用quartz,

springboot+vue+websockt+stomp+spring-security

直奔主题: 一般的web项目都是短连接,主动权是交给客户端手里,在客户端不发请求的情况下,服务端是没办法主动给客户端发送消息.但是有些情况下,我们需要长连接,比如常见到的聊天室.网上有很多的案例这里就不多说了!() java后端部分 首先,我们是需要导入maven节点 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websock