转自:
下文笔者讲述spring中使用Quartz作业调度框架的示例说明,如下所示
Quartz作业框架简介
Quartz 是一个开源的作业调度框架
它是一个纯Java语言编写的作业调度框架
并设计用于J2SE和J2EE应用中
它提供巨大的灵活性而不牺牲简单性
你能够用它来为执行一个作业而创建简单的或复杂的调度
Quartz下载地址
http://grepcode.com/snapshot/repo1.maven.org/maven2/org.quartz-scheduler/quartz/1.7.3
applicationContext.xml
Xml代码
web.xml
org.springframework.web.context.ContextLoaderListener contextConfigLocation /WEB-INF/classes/applicationContext.xml
Test.java :
//调用的类
public class Test {
//调用的方法
public void execute(){
//需要做的事情
}
public static void main(String[] args) {
System.out.println(“—-begin—“);
ApplicationContext context = new ClassPathXmlApplicationContext(“applicationContext.xml”);
// 如果配置文件中将startQuertz bean的lazy-init设置为false 则不用实例化
context.getBean(“startQuertz”);
System.out.print(“—-end—“);
}
}
各参数说明
1.JobDetail:
JobDetail是一个具体的类
2.Trigger:
触发器,用于定义Job何时执行
常用如:SimpleTrigger和CronTrigger
如果需要在一个固定的时间和重复次数或一个固定的间隔时间,则SimpleTrigger比较合适
如果有许多复杂的作业调度,那么CronTrigger比较合适
CronTrigger和Unix的cron机制基本一样,
只是一个 cron 表达式
如“ 0 0 8 * * ? ”会在每天上午 8 点触发
3.Scheduler 和 SchedulerFactory:
Scheduler负责管理Trigger,调度Job,
SchedulerFactory则是 Scheduler 工厂,负责生成Scheduler