1.首先创建一个任务类
import java.text.SimpleDateFormat;
import java.util.Date;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.scheduling.concurrent.ScheduledExecutorFactoryBean;
import org.springframework.scheduling.quartz.SchedulerFactoryBean;
import org.joda.time.DateTime;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
public class QuartzJob {
public static Logger logger = LoggerFactory.getLogger(QuartzJob.class);
public void QuartzJobMethod(){
logger.info("Auto Execute TestMethod start! Date={}" ,new DateTime().toString("YYYY-MM-DD HH:mm:ss" ));
logger.info("**********批量开始************");
//写业务逻辑
logger.info("Auto Execute TestMethod end! Date={}" ,new DateTime().toString("YYYY-MM-DD HH:mm:ss" ));
logger.info("*********批量结束************");
}
}
2.在spring的配置文件applicationContext.xml中添加以下配置
<!-- 实例化bean -->
<bean name= "quartzJob" class ="com.test.controller.QuartzJob"/>
//name自定义 class 给创建任务类的全路径
<!-- 配置MethodInvokingJobDetailFactoryBean -->
<bean id="testQuartzJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject">
<ref bean="quartzJob" />
</property>
<property name="targetMethod">
<value>QuartzJobMethod</value>
</property>
</bean>
<!-- 配置定时表达式 -->
<bean id= "testQuartzJobTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean" >
//2.0以后的版本,使用这个org.springframework.scheduling.quartz.CronTriggerFactoryBean
//2.0之前的基本上是使用org.springframework.scheduling.quartz.CronTriggerBean
<property name="jobDetail">
<ref bean="testQuartzJobDetail" />
</property>
<property name="cronExpression">
<value>*/10 * * * * ?</value>
</property>
</bean>
<!-- 配置调度工厂 -->
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean" autowire="no">
<property name="triggers" >
<list>
<ref bean="testQuartzJobTrigger" />
</list>
</property>
</bean>
3.这样我们就配置好了 ,启动我们的项目,Quartz就会在后台将日志打印出来啦!