文档章节

spring集成并配制quartz

猪刚烈
 猪刚烈
发布于 2014/10/12 11:40
字数 348
阅读 36
收藏 0

Quartz主要有l四个接口:Job,JobDetail,Trigger,Scheduler. Job接口表示一个定时作业(任务)。JobDetail表示一个实际的定时作业,它总是包含一个Job对象。Trigger用来表示一个定时作业的定时周期。Scheduler就是安排定时作业的排表器,它的方法:Date scheduleJob(JobDetail jobDetail, Trigger trigger) throws SchedulerException;可以非常明白地说明它的用途。
http://www.quartz-scheduler.org/docs/examples/Example1.html 是官方文档的一个简单的例子。

Spring对Quartz作了继承,使得Quartz可以非常容易地集成到Spring中。 Spring配制 Quartz与编写Quartz代码的步骤是非常相似的,即分以下三步:

1.创建JobDetail

2.创建Trigger

3.创建Sechuler,把Trigger和JobDetail设给它,随即开启作业。

以下是一个配制每日作业的spring配制文件:

<!-- 定义JobDetail -->
    <bean name="dailyJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    	<property name="targetObject" ref="dailyJobService"/>
    	<property name="targetMethod" value="executeDailyJob"/>
    </bean>
    
    <!-- 定义Trigger -->
    <bean name="dailyJobTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
    	<property name="jobDetail" ref="dailyJob"/>
    	<property name="cronExpression" value="0 0 0 * * ?"/><!-- Executes at 00:00 everyday. -->
    </bean>
    
    <!-- 定义Scheduler. 注意:此类为lazy-init="false",意在系统启动时立即执行定时作业。 -->
	<bean id="dailyJobScheduler" lazy-init="false" autowire="no" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">  
		<property name="triggers">  
			<list>  
				<ref bean="dailyJobTrigger"/>  
			</list>  
     	</property>  
	</bean>

其中dailyJobService就是具体的作业类,而executeDailyJob就是执行作业内容的具体方法。值得注意是的这个 executeDailyJob不必实现Job接口。

本文转载自:http://blog.csdn.net/bluishglc/article/details/5814208

共有 人打赏支持
猪刚烈
粉丝 22
博文 708
码字总数 110
作品 1
海淀
程序员
私信 提问
Spring Boot--自定义Starter之spring-boot-starter-quartz

痛点 在Spring中使用计划任务,有两种方案可供选择:一、用Spring原生的计划任务,使用起来非常简单,只需要用到@Scheduled注解即可;二、集成Quartz来做计划任务,需要配置大量的Quartz原生...

大大枣
04/03
0
0
项目ITP(五) spring4.0 整合 Quartz 实现任务调度

2014-05-16 22:51 by Jeff Li 前言   系列文章:[传送门]   项目需求:     二维码推送到一体机上,给学生签到扫描用。然后需要的是 上课前20分钟 ,幸好在帮带我的学长做 p2p 的时候...

泥沙砖瓦浆木匠
2014/05/16
0
0
关于spring 注解,初始化的问题

前段时间用quartz,集成于spring,有些问题,特记下来,spring的初始化,这个想必在独立程序中是没有多大的问题的,因为应用spring和quartz的集成完成动态任务的更新,@Service , @Resourc...

石头哥哥
2013/03/10
0
0
项目ITP(六) spring4.0 整合 Quartz 实现动态任务调度

2014-05-18 12:51 by Jeff Li 前言   系列文章:[传送门]   项目需求:      http://www.cnblogs.com/Alandre/p/3733249.html      上一博客写的是基本调度,后来这只能用于,...

泥沙砖瓦浆木匠
2014/05/18
0
0
Spring整合Quartz(JobDetailBean方式)

一、Spring创建JobDetail的两种方式 定时任务两种方式,Spring很好的封装使用Quartz的细节,第一种方式是利用SPring封装的Quartz类进行特定方法的实现,第二种是通过透明的使用Quartz达到定时...

Leons
2015/08/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Docker的架构与自制镜像的发布

一. docker 是什么 大家都知道虚拟机吧,windows 上装个 linux 虚拟机是大部分程序员的常用方案。公司生产环境大多也是虚拟机,虚拟机将物理硬件资源虚拟化,按需分配和使用,虚拟机使用起来...

程序猿拿Q
7分钟前
0
0
ubuntu下pycharm调用Hanlp实践分享

前几天看了大快的举办的大数据论坛峰会的现场直播,惊喜的是hanlp2.0版本发布。Hanlp2.0版本将会支持任意多的语种,感觉还是挺好的!不过更多关于hanlp2.0的信息,可能还需要过一段时间才能看...

左手的倒影
15分钟前
0
0
Python监控服务器实现邮件微信报警[未测试]

本文中笔者暂时实现的只有cpu和内存的监控,python可以监控许多的主机信息,网络,硬盘,机器状态等,以下是代码的实现,代码可以实现windows和linux的监控。 实验环境:Ubuntu16.04和windo...

dragon_tech
20分钟前
1
0
Spring Boot 返回 JSON 数据,一分钟搞定!

在 WEB 项目中返回 JSON 数据是常见的交互形式,在 Spring Boot 中这一切都变得十分简单。So easy!!! 你所需具备的基础 什么是 Spring Boot? Spring Boot 核心配置文件详解 Spring Boot 开启...

Java技术栈
26分钟前
2
0
保护Hadoop集群三大方法

大约在两年前,开源数据库解决方案MongoDB以及Hadoop曾遭受过大量恶意攻击,这些攻击后被统称为“勒索软件”,因为其攻击者会擦除或加密数据,然后向被攻击者索要资金以恢复数据。自今年以来...

linuxCool
32分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部