首先,配置maven的pom.xml:
<!-- 定时任务 -->
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>2.1.1</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>4.3.2.RELEASE</version>
</dependency>
然后,在spring-service.xml中,添加配置文件头部:
xmlns:task="http://www.springframework.org/schema/task"
在xsi:schemaLocation,添加:
http://www.springframework.org/schema/task
http://www.springframework.org/schema/task/spring-task.xsd
在spring-service.xml中的配置信息:
<!-- test定时任务更新-->
<bean id="testJobDetail" class="org.springframework.scheduling.quartz.JobDetailFactoryBean">
<property name="jobClass" value="com.text.task.Test"></property>
<property name="applicationContextJobDataKey" value="applicationContext"></property>
</bean>
<!-- 触发器 -->
<bean id="testTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name= "jobDetail" ref="testJobDetail"></property>
<property name="cronExpression" value="*/5 * * * * ?"></property>
</bean>
<!-- 调度器 -->
<bean id="scheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="testTrigger"/>
</list>
</property>
</bean>
在com.text.task包中的Test类:
package com.text.task;
import java.text.SimpleDateFormat;
import java.util.Date;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
public class Test implements Job{
public void execute(JobExecutionContext paramJobExecutionContext) throws JobExecutionException {
//打印当前的执行时间,格式为2017-01-01 00:00:00
Date date = new Date();
SimpleDateFormat sf =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
System.out.println("Current Exec Time Is :" + sf.format(date));
}
}
运行Tomcat,Eclipse控制台输出结果: