- 浏览: 54332 次
- 性别:
- 来自: 洛阳
文章分类
最新评论
Quartz定时任务的实现及详解
平常工作中经常遇到写定时任务的,这次做一次记录和解析分享给大家,共同学习进步,遇到写的不对的地方也请大家指教
用例:比如每天凌晨我们要让系统定时执行一些耗费服务器的事情,或者其他的一些定时任务
相关的jar包在附件,如有需要自行下载
1、首先怎么启动这个Quartz呢?
在项目启动的时候,让web.xml读取我们的定时器配置文件,如下所示
<param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/config/quartz.xml//是我们配置定时任务的文件 //...等等其他任务 </param-value>
2、接着再来看一下我们的quartz.xml是怎么写的
,注释有点长,排版不是很清楚,可以直接拷贝在本地的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" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd"> //<!-- 时间调度属性配置文件 --> <bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>WEB-INF/config/quartz.properties</value><!--如果定时任务较多,可以在这里开辟一个配置文件来统一管理时间--> </list> </property> </bean> //<!--如果targetObject中引用的类在struts.xml或者其他地方没有配置的时候可以在本xml配置,就像这样--> <!--<bean id="refreshCacheJob" class="com.xxx.web.job.impl.refreshCacheJob"></bean>--> <bean id="mobileSearchJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> <property name="targetObject" ref="refreshCacheJob"/> //<!--目标对象(任务要在哪个类中执行,可以直接在ref里面引用配置文件中的别名)--> <property name="targetMethod" value="execute"/> //<!--要执行目标对象里的什么方法--> <property name="concurrent" value="false"/> //<!--concurrent==false 任务不并行(即当第一个任务还没有执行完,此时第二个任务触发要等到第一个执行完毕才会执行第二个)--> </bean> <bean id="mobileSearchTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean"> //<!--有corn与simple触发器两种--> <property name="jobDetail" ref="mobileSearchJob"/> //<!--要触发的任务--> <property name="cronExpression" value="${mobileReset_time}"/> //<!-- corn表达式(引用型)每隔3分钟触发一次 --> <!-- <property name="cronExpression" <value>0 0 2 * * ?</value>/>-->//<!--直接corn表达式的值--> </bean> //<!-- 控制器类 --> <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers"> <list> <ref bean="mobileSearchTrigger" /> //..引用其他的定时任务 </list> </property> </bean> </beans>
3、最后就是我们具体的实现了,就是一个普通类
package com.xxx.db.quartz; import com.fuiou.fwp.db.mapper.TUappOrderAcqMapper; public class refreshCacheJob { public void doSearch(){//具体的任务实现的方法 // } }
- quartz-all-1.8.6.jar (455.7 KB)
- 下载次数: 5
发表评论
-
Condition
2017-01-03 16:58 0condition的应用 -
java对sftp文件进行上传、下载、删除等操作,附详细demo
2016-12-22 18:01 2087这是自己总结的一个类,包含连接sftp,上传,下载等操作,附件 ... -
servlet监听器功能讲解及代码案例
2017-07-08 16:54 620servlet监听器功能讲解及代码案例 监听器的功能很强大, ... -
web.xml之session超时设置 以及设置session超时的几种方法
2016-10-20 16:39 1189web.xml之session超时设置 先说正题,web. ... -
web.xml之过滤器详解 以及常用过滤器demo
2016-10-20 14:15 2717web.xml之过滤器详解 一 ... -
poi导出excel清晰 步骤详解
2016-10-14 14:08 843poi导出excel清晰 步骤详解 一、本次生成excel ... -
struts2下载文件最简化版清晰详解
2016-10-14 11:20 614struts2下载文件最简化版清晰详解 一、应用场景如下: ... -
poi解析excel步骤详解
2016-10-14 10:42 2115poi解析excel步骤详解 一、本次解析excel应用场景 ... -
struts2文件上传详解
2016-10-13 11:26 807struts2文件上传详解 一、jsp代码 <fo ... -
ThreadLocal用法详解
2016-09-29 10:44 1603ThreadLocal用法详解 1.ThreadLocal的 ... -
JSONObject、JSONArray、xml的常用操作
2016-09-28 16:33 1365JSONObject、JSONArray、xml的常用操作 ... -
Rsa签名算法详解
2016-09-22 09:48 4628Rsa签名算法详解 签名生成规则与验证签名规则如下: ... -
四种线程池的特性以及测试代码
2016-09-21 09:20 905四种线程池的特点如下 ... -
操作json
2016-09-18 13:01 642总是记不住一些零碎的知识点,这次开个专栏来记录,不定期更新: ... -
日期类型转换
2016-09-18 12:50 532总是记不住一些零碎的知识点,这次开个专栏来记录,不定期更新: ... -
配置文件的读取与写入
2016-09-14 17:00 650读取配置文件: public static void m ... -
HttpPoster接口调用
2016-09-13 13:47 1624工作中经常用到的东西,这也是自己在公司的基础上改造的,感觉挺好 ... -
md5加密
2016-09-13 13:39 594md5工具类如下所示,可以直接拿走用,分享记录一下 pack ... -
AES加密与解密
2016-09-13 13:37 477这个其实是我们项目里面的一个工具类,给大家做一下分享 aes ... -
循环map取值的方法
2016-09-08 13:00 1543循环map取值的方法,如下所示: 方法一: Map< ...
相关推荐
### Quartz定时任务表达式详解 在探讨Quartz定时任务表达式的使用之前,我们先了解下Quartz是什么。Quartz是一个开源的作业调度框架,能够触发在指定时间运行的任务,广泛应用于Java应用程序中进行定时任务的管理。...
在Spring Boot应用中整合Quartz定时任务是一种常见的需求,它可以帮助我们执行周期性的后台任务,如数据同步、报表生成等。Spring Boot与Quartz的结合提供了便捷的配置方式,特别是通过YAML(YAML Ain't Markup ...
【SSM+Quartz 定时任务管理Demo详解】 在Java Web开发中,定时任务是一项常见且重要的功能,用于执行一些周期性或者特定时间点的任务,例如数据统计、备份、清理等。本Demo以"基于SSM+quartz的定时任务管理"为主题...
Quartz是Java领域中广泛应用的一款开源的作业调度框架,它允许开发者在应用程序中安排复杂的定时任务。本教程将深入探讨Quartz的核心概念、配置、API使用以及如何在实际项目中集成和管理定时任务。 一、Quartz核心...
Quartz定时任务详解 Quartz 是一个功能齐全的开源作业调度系统,可以用于从最小的应用程序到大型企业系统。Quartz 非常灵活,包含多个可以单独或一起使用的使用范例,以实现您想要的行为,并使您能够以对您的项目最...
总之,通过Spring集成Quartz定时任务框架,我们可以轻松实现复杂的工作调度。理解并熟练运用Cron表达式,能帮助我们更加精确地控制任务的执行时机,从而提升应用的自动化程度和效率。在实际开发中,可以根据项目需求...
Quartz 是一款开源的作业调度框架,可以用来实现各种定时任务的需求。它提供了一种简单的方式来定义触发器(Trigger),用于设定作业(Job)何时运行。Quartz 的灵活性很高,并且支持多种类型的触发器,包括简单的...
《Spring与Quartz实现定时任务详解》 在Java开发中,定时任务的处理是一项重要的功能,它能够按照预设的时间规律自动执行特定的任务,比如数据同步、报表生成等。Spring框架,作为Java企业级应用的基石,提供了丰富...
综上所述,将SpringBoot的Quartz定时任务与Layui界面结合,不仅可以实现后台任务的自动化,还可以提供直观的管理界面,极大地提高了工作效率。在具体实施过程中,要注意各个组件的正确配置和调用,以及充分考虑系统...
* Spring框架中定时任务的实现方法有多种,包括使用Spring自带的轻量级定时任务实现和整合Quartz框架来实现动态定时任务。 * Quartz框架是一个功能强大且灵活的定时任务实现框架,具有高可靠性和高灵活性的特点。 * ...
### Spring集成Quartz定时任务框架介绍 #### 一、引言 在现代JavaEE应用程序开发过程中,定时任务是一项常见的需求。这些任务可能包括但不限于:每天固定时间生成报表、定期清理缓存、定时发送邮件提醒等。传统的...
Quartz 则是一款强大的作业调度框架,它允许开发者在 Java 应用中实现定时任务的调度功能。通过将两者结合使用,可以更好地管理定时任务,并充分利用 Spring 的特性。 #### 二、Spring与Quartz的整合概述 整合 ...
基于Quartz定时调度任务(详解) Quartz是一个开源的Job Scheduling系统,可以与J2EE与J2SE应用程序相结合,也可以单独使用。Quartz提供了强大的定时执行任务的功能,可以根据不同的触发器配置来执行不同的任务。 ...
【Spring集成Quartz定时任务与数据库实现集群详解】 在企业级应用中,定时任务的管理是必不可少的一部分,Spring框架提供了与Quartz的集成,使得我们可以方便地创建和管理定时任务。Quartz是一款强大的、开放源代码...
Spring 定时任务配置详解 Spring 框架提供了对定时调度服务的内置支持类,支持从 JDK 1.3 开始内置的 Timer 类和 Quartz Scheduler。开发者可以通过 FactoryBean,分别指向 Timer 或 Trigger 实例的引用进行配置。...
### Spring定时任务的几种实现 #### 一、定时任务实现技术分类 在Spring框架中,实现定时任务的主要技术方案有三种: 1. **Java自带的`java.util.Timer`类**:这种实现方式允许用户调度一个`java.util.TimerTask`...
#### 二、搭建Quartz定时任务系统 在实际开发过程中,Quartz的集成主要涉及数据库表结构的设计、配置文件的编写以及Spring框架下的整合等几个关键步骤。 ##### 1. 数据库表结构设计 根据提供的信息`tables_mysql_...
总结起来,这个例子展示了如何在Spring中配置Quartz定时任务,包括定义任务细节、触发器以及调度器。通过这样的配置,你可以创建复杂的定时任务调度,满足不同业务需求。需要注意的是,实际项目中,为了更好地管理...
其设计灵感来源于Java的Quartz项目,提供了强大的定时任务管理和并发处理能力。Quartz.NET通过Job和Trigger的概念,实现了任务(Job)和触发器(Trigger)的解耦,使得我们可以灵活地定义任务执行的时机和频率。 接...
相比于传统的Java Timer或者第三方定时任务库如Quartz等,`@Scheduled`提供了更为简洁和易于集成的方式来实现定时任务的需求。 **2.2 实现原理** `@Scheduled`注解的实现原理主要依赖于Spring框架的任务调度机制。...