一、简介:Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的程序。Jobs可以做成标准的Java组件或 EJBs。Quartz的最新版本为Quartz 2.3.0。

二、因为定时调度,在很多业务上面都会涉及,想要根据自己的规则来生成自己想要的达到的目的。所以利用quartz来时间定时任务的触发。是非常有必要的。

三、springmvc下需要的jar包

   <dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>4.3.9.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context-support</artifactId><version>4.3.9.RELEASE</version></dependency><dependency><groupId>org.quartz-scheduler</groupId><artifactId>quartz</artifactId><version>2.2.3</version></dependency>

说明:quartz是基础包。spring-context-support包是调度设置的依赖包。spring-context可以不用添加。

四、spring-quartz.xml的配置

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:context="http://www.springframework.org/schema/context" xmlns:jdbc="http://www.springframework.org/schema/jdbc"  xmlns:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx"xmlns:aop="http://www.springframework.org/schema/aop" xmlns:mvc="http://www.springframework.org/schema/mvc"xmlns:util="http://www.springframework.org/schema/util"xmlns:jpa="http://www.springframework.org/schema/data/jpa"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.3.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsdhttp://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-4.3.xsdhttp://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-4.3.xsdhttp://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.3.xsdhttp://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.0.xsdhttp://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.3.xsdhttp://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsdhttp://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-4.3.xsd"><!-- 加入需要执行的类 --><bean id="timingSchedule" class="com.troy.jpa.schedule.TimingSchedule"/><!-- 加入定时执行的方法 --><bean id="timingScheduleJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"><!-- 定时执行的类 --><property name="targetObject" ref="timingSchedule"/><!-- 具体的方法 --><property name="targetMethod" value="execute"/></bean><!-- 调度触发器,设置自己想要的时间规则 --><bean id="timingScheduleTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean"><!-- 加入相关的执行类和方法 --><property name="jobDetail" ref="timingScheduleJobDetail"/><!-- 设置时间规则 (为了方便测试,设置成一分钟一次。具体的规则见详情)--><property name="cronExpression" value="00 * * * * ?"/>    </bean><!-- 加入调度工厂 ,设置调度触发器即可--><bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean"><property name="triggers"><list><ref bean="timingScheduleTrigger"/></list></property></bean>
</beans>

五、需要执行的类和方法

package com.troy.jpa.schedule;import java.util.Date;public class TimingSchedule {//定时执行的方法public void execute(){System.out.println("执行时间"+ new Date());}
}

六、执行效果

执行时间Wed Jul 12 21:01:00 CST 2017
执行时间Wed Jul 12 21:02:00 CST 2017
执行时间Wed Jul 12 21:03:00 CST 2017
执行时间Wed Jul 12 21:04:00 CST 2017

七、时间设置规则

1  秒  是  0-59    , - * /
2  分  是  0-59   , - * /
3 小时  是  0-23   , - * /
4  日  是  1-31   , - * ? / L W
5  月  是  1-12 or JAN-DEC   , - * /
6  周  是  1-7 or SUN-SAT   , - * ? / L #
7  年  否  empty 或 1970-2099  , - * / 

springmvc+quartz简单实现定时调度相关推荐

  1. 十七、.net core(.NET 6)搭建基于Quartz组件的定时调度任务

     搭建基于Quartz组件的定时调度任务 先在package包项目下,添加Quartz定时器组件: 新建类库项目Wsk.Core.QuartzNet,并且引用包类库项目.然后新建一个中间调度类,叫Qu ...

  2. zk和quartz实现分布式定时调度

    zk和quartz实现分布式定时调度 https://blog.csdn.net/lanjian056/article/details/52711318

  3. java quartz timer_Java 定时调度TimerQuartz

    目录 三.Quartz 一.Java定时任务介绍 在Java中,用得比较多的有两种,一个是Timer,一个是Quartz: 其中Timer是这是jdk自带的类库,一般用来实现简单的定时调度,由一个后台 ...

  4. Spring4+Springmvc+quartz实现多线程动态定时调度

    scheduler定时调度系统是大多行业项目都需要的,传统的spring-job模式,个人感觉已经out了,因为存在很多的问题,特别是定时调度的追加.修改.删除等,需要修改xml,xml的配置生效无非 ...

  5. Quartz.Net实现作业定时调度详解

    Quartz.Net实现作业定时调度详解 原文:Quartz.Net实现作业定时调度详解 1.Quartz.NET介绍 Quartz.NET是一个强大.开源.轻量的作业调度框架,你能够用它来为执行一个 ...

  6. 定时调度系列之Quartz.Net详解

    一. 背景 我们在日常开发中,可能你会遇到这样的需求:"每个月的3号给用户发信息,提醒用户XXX "."每天的0点需要统计前一天的考勤记录"."每个月 ...

  7. SpringBoot集成quartz定时调度任务并通过JDBC持久化

    SpringBoot集成quartz定时调度任务并通过JDBC持久化 话不多说上干货 项目pom依赖 配置类 抽象出调度任务实体类 调度执行和调度任务更改工具类 调度配置与执行的代码完毕,下面就是对持 ...

  8. Quartz定时调度

    工作中我们经常会用到定时调度,也就是说每隔多久去执行一下某个方法.公司的系统要每天24点定时去抽取his数据库中的数据,所用的框架是Springmvc+mybatis.采用的 Q是uartz(版本2. ...

  9. 定时执行程序-Quartz简单实例

    定时执行程序-Quartz简单实例 1.加jar包:Quartz自己quartz-1.8.3.jar和依赖包commons-logging.jar  .slf4j-log4j12-1.5.10.jar ...

最新文章

  1. 宏基因组-微生物组文章目录索引(180401)
  2. python局部变量屏蔽全局变量_python – 将局部变量设置为函数而不是使用全局变量来优化函数...
  3. 解决VS2008 开发Windows Mobile 项目生成速度慢的问题
  4. 多线程 全局变量_python高级:6.多线程part1
  5. delayqueue_在DelayQueue中更改延迟,从而更改顺序
  6. HDU 5972 Regular Number
  7. HPU--1189 Ou à
  8. 第一个Spring冲刺周期团队进展报告
  9. 20个最漂亮的基于WordPress的企业网站
  10. java如何使用md5加密_Java中MD5加密
  11. 机器学习:使用python生成训练集和测试集的方法实现
  12. 也许下一个倾家荡产的就是你
  13. 合同在项目管理中的优势
  14. 84行C++代码教你实现洛谷占卜功能
  15. 虾扑 - 货源采集便捷无忧
  16. python虚拟数字人直播间带货
  17. python培训班昆明
  18. 网站都变成灰色的了,代码是怎么实现的呢?
  19. C语言开发单片机为什么大多数都采用全局变量的形式?
  20. 【学术】我读科学网“马臻”老师博客体会

热门文章

  1. 如何给女朋友解释为什么Java里面的String对象是不可变的?
  2. Mybatis的工作原理,你了解过吗?
  3. 不止JDK7的HashMap,JDK8的ConcurrentHashMap也会造成CPU 100%
  4. Openresty最佳案例 | 第3篇:Openresty的安装
  5. 详解医学顶刊《柳叶刀》最新发表新型冠状病毒研究论文
  6. 【廖雪峰python入门笔记】字符串_转义字符的使用
  7. 搞定一个C++项目最快需要多久?
  8. 国科大回应:博士生每月不低于4300元!
  9. CVPR2020人脸防伪检测挑战赛冠军方案开源
  10. XML之父从愤然亚马逊离职,放弃百万年薪,谷歌华为争抢