如何在spring中配置定时任务?
spring的定时任务配置分为三个步骤:
1、定义任务
2、任务执行策略配置
3、启动任务

1、定义任务

<!--要定时执行的方法-->
<bean id="testTaskJob"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject">
<!--指定要定时执行的方法所在类,将定时任务定义成bean-->
<ref bean="testTask" />
</property>
<property name="targetMethod">
<!--指定定时执行的方法-->
<value>execute</value>
</property>
<property name="concurrent">
<!--指定目标封装为有状态的任务,有状态的任务不能并发执行,无状态的任务可并发执行-->
<value>false</value>
</property>
</bean>

2、任务执行策略配置
(1)指定重复间隔的定时任务

<!-- 调度时间设置-->
<bean id="testTaskJobTrigger"
class="org.springframework.scheduling.quartz.SimpleTriggerBean">
<property name="jobDetail">
<ref bean="testTaskJob" />
</property>
<!-- 延时启动时间,单位ms -->
<property name="startDelay" value="60000"></property>
<!-- 重复间隔时间,单位ms -->
<property name="repeatInterval" value="60000">
</property>
</bean>

(2)按周期执行的任务

 <!-- 定义触发时间 --><bean id="doTime"class="org.springframework.scheduling.quartz.CronTriggerBean"><property name="jobDetail"><ref bean="testTaskJob" /></property><!-- cron表达式,此处是每天10点42执行 --><property name="cronExpression"><value>0 42 10 * * ?</value></property></bean>

3、启动任务

<!--启动工作-->
<bean lazy-init="false"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<!-- 这里添加多个定时任务触发器,对应第2步的bean id -->
<ref local="testTaskJobTrigger" />
</list>
</property>
</bean>

实际案例:
1、Spring MVC

<beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd" default-autowire="byName">

2、

<!--  每天凌晨0点40触发,检索即将到期的认证学员,并自动发送邮件  -->
<bean id="moSchedule" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean"><property name="jobDetail"><bean class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"><!--要执行的类名如下--><property name="targetObject"><ref bean="moTestScheduleService" /></property><!--要执行的方法名如下--><property name="targetMethod"><value>moSchedule</value></property><!--指定最终封装出的任务是否有状态--><!--指定目标封装为有状态的任务,有状态的任务不能并发执行,无状态的任务可并发执行--><property name="concurrent"><value>false</value></property></bean></property><!--设定触发时间--><property name="cronExpression"><value>0 50 0 * * ? </value><!--  每天凌晨0点50触发  --></property></bean>

3、

<!--启动工作--><bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean"  lazy-init="false" autowire="no"> <property name="triggers"> <list><!--<list> 里添加多个定时任务触发器,对应前面的bean id --><!--如:岗位认证到期邮件发送--><ref bean="moSchedule"/></list></property> </bean>

【Spring配置文件】Spring定时器的使用及配置相关推荐

  1. Spring - Spring配置文件-Spring配置数据源详解

    文章目录 一般方式配置数据源 数据源(连接池)的作用 数据源开发的步骤 数据源创建演示(c3p0) 创建maven-web骨架项目 导入mysql.c3p0.druid.junit坐标 创建编写测试类 ...

  2. spring配置文件路径修改后web.xml配置

    在web.xml中加入 <listener> <listener-class> org.springframework.web.context.ContextLoaderLis ...

  3. Spring idea中spring配置文件自动检查配置应用程序上下文的操作

    IDEA中 Spring配置文件默认会被检查是否配置应用程序上下文 idea中默认会自动检查是否配置上下文 1.点击蓝色字体 2.点击创建新的应用程序上下文 3.点击确定就配置完成了 但是!开始不知道 ...

  4. spring配置文件

    文章目录 1. Spring程序开发步骤 2. Spring配置文件 2.1 Bean标签基本配置 2.2 Bean标签范围配置 2.2 Bean生命周期配置 2.3 Bean实例化三种方式 2.4 ...

  5. spring配置xml文件_XML配置文件中的Spring配置文件

    spring配置xml文件 我的上一个博客非常简单,因为它涵盖了我从Spring 3.0.x到Spring 3.1.x的轻松升级,最后我提到可以将Spring模式升级到3.1,以利用Spring的最新 ...

  6. Spring配置文件和Java配置

    我的上一个博客介绍了Spring 3.1的配置文件,并解释了使用它们的业务案例,并演示了它们在Spring XML配置文件中的用法. 但是,似乎很多开发人员更喜欢使用Spring的基于Java的应用程 ...

  7. java spring配置文件路径_java - 在spring b中从命令行设置活动配置文件和配置位置...

    java - 在spring b中从命令行设置活动配置文件和配置位置 我有一个春季启动应用程序. 我的应用程序中有三个配置文件 - > 开发,分期和生产. 所以我有3个文件 应用developm ...

  8. Spring框架学习笔记03:初探Spring——利用注解配置类取代Spring配置文件

    文章目录 一.课程引入 二.利用注解配置类取代Spring配置文件 (一)打开项目[SpringDemo2021] (二)创建net.hw.spring.lesson03包 (三)移植上一讲的接口和类 ...

  9. Spring中,applicationContext.xml 配置文件在web.xml中的配置详解

    Spring中,applicationContext.xml 配置文件在web.xml中的配置详解 2016年10月04日 15:22:26 阅读数:7936 转自http://www.cnblogs ...

  10. Spring配置文件使用占位符配置

    Spring利用PropertyPlaceholderConfigurer占位符 1.Spring的框架中,org.springframework.beans.factory.config.Prope ...

最新文章

  1. Linux下进行谷歌浏览器安装
  2. 【设计模式】享元模式 实现 ( 实现流程 | 抽象享元类 | 具体享元类 | 享元工厂 | 用户调用 | 代码模板 )
  3. 列举java接口_Java接口特点列举说明
  4. 如何格式化电脑_移动硬盘提示格式化如何解决?数据恢复软件解决问题
  5. 陕西省计算机二级报名流程,计算机二级考试报名流程
  6. C++ 泛型编程(一):模板基础:函数模板、类模板、模板推演成函数的机制、模板实例化、模板匹配规则
  7. 由SQL数据库转换Redis的实例
  8. paip.抓取网页内容--java php python
  9. cx_Oracle安装教程
  10. 「 英雄哪里出来 」算法博客阅读指引
  11. 手机是如何做到精准定位的
  12. iOS 音乐播放器之锁屏歌词+歌词解析+锁屏效果
  13. 关于virtualbox无法复制粘贴的问题
  14. 2019最全大数据学习资源整理(值得收藏)
  15. Fcoin事件背后的良心与底线
  16. Windows10远程桌面连接提示:出现身份验证错误,要求的函数不受支持。。。
  17. 某喜欢研究车的80后,驾驶经验59条
  18. 中X集团企业数字档案室建设方案- 档案馆数字化建设实施方案
  19. Chef Infra 16添加了YAML配方支持
  20. 2021-08-14王汕8.15黄金指导】黄金,下周一黄金走势分析,外汇黄金实时策略指导

热门文章

  1. 科技爱好者周刊(第 149 期):新能源汽车,谁会是赢家?
  2. 《欲罢不能:刷屏时代如何摆脱行为上瘾》书摘
  3. QT从字体名获取字库文件路径(从宋体获取到simsun.ttc)
  4. MSSQL 2012 密钥
  5. JTAG接口定义与其他简介
  6. SQL注入语句(详细)
  7. C++ 偏微分数值计算库_「首席架构师推荐」数值分析软件精选
  8. wifi分析仪怎么看哪个信道好_四大实用WiFi检测工具,调整信道避免干扰
  9. 微博黄V怎么认证:如何快速获得微博认证?
  10. 计算机毕业设计之社区自行车租赁管理系统