分类:
2008-09-09 17:10:43
近期接到一个开发任务,业务方面不再详述,要求每天定时执行一段应用程序用来同步俩个数据库。
正好近期一直在用spring做相关开发,尝试了下Quartz,感觉不错,目前也正在学习中。。。
Quartz使用Trigger、Job以及JobDetail等对象来进行各种类型的任务调度,Spring对其提供了很好的支持。
建立一个时序调度程序的过程如下: 1) 配置Job及JobDetail Bean,定义执行某个类里的特定方法; 2) 配置Trigger Bean,定义触发JobDetail的时间规律; 3) 配置SchedulerFactoryBean负责调度实际的Trigger;时序调度的运行模式有两种: 1) 一种是在某个特定时间自动运行,例如每天凌晨2点备份数据、每月初1号统计上月的数据等,我们称之为定时调度;
2)另一种是在服务启动一段时间后开始运行,再每隔一段时间再次运行,如系统监控程序每个10分钟就要测试一下数据库是否连接正常,我们称之为重复调度;
下面举出两个简单的范例,详细原理和配置方法请参考 Spring 官方文档和程序范例的ApplicationContext-quartz.xml 文件;
一、定时调度参数配置是在每天的14:35的时间自动执行CronSimpleJob.java 类中的 executeInternal()方法,在系统控制台上输 出日志内容。
ApplicationContext-quartz.xml内容:
view plaincopy to clipboardprint?
!--定时简单JobDetail-->
[1]