当你新建web project ,导入spring的相关包后,还需要导入 spring.jar, quartz-all-1.6.1.jar , commons-collections-3.2.1.jar .
(把项目中commons-collections.jar删掉,版本太低)
一:新建jobDetail类 ,只需要继承QuartzJobBean
package com.justtide.quartz;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.springframework.scheduling.quartz.QuartzJobBean;
public class TestQuartz extends QuartzJobBean{
@Override
protected void executeInternal(JobExecutionContext arg0)
throws JobExecutionException {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd hh-mm-ss");
Date date = new Date();
String now = format.format(date);
System.out.println(now);
}
}
二:在applicationContext.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-2.5.xsd">
<!-- 要调度的对象 -->
<bean id="jobDetail" class="org.springframework.scheduling.quartz.JobDetailBean">
<property name="jobClass">
<value>com.justtide.quartz.TestQuartz</value>
</property>
</bean>
<!-- 定义触发的时间 -->
<bean id="cron" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail">
<ref bean="jobDetail"/>
</property>
<property name="cronExpression">
<value>0/5 * * * * ?</value> <!--每隔五秒钟触发一次-->
</property>
</bean>
<!-- 定义触发器 -->
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="cron"/>
</list>
</property>
</bean>
</beans>
三:测试类
package com.justtide.test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
public class Test {
public static void main(String[] args) {
ApplicationContext act = new ClassPathXmlApplicationContext("applicationContext.xml");
}
}
可能会报 applicationContext.xml 没找到,参照以前写的博客,这里的话也可以直接将applicationContext.xml拖到src目录下
即可。