Spring使用Quartz配置调度事务(转)
?首先编写服务类:
?
package QuartzTest;import java.util.Date;public class CourseService { public void start(){ System.out.println(new Date().getSeconds()); }}
?
编写调度类,需要继承QuartzJobBean :
?
package QuartzTest;import org.quartz.JobExecutionContext;import org.quartz.JobExecutionException;import org.springframework.scheduling.quartz.QuartzJobBean;public class QuartzJob extends QuartzJobBean { protected void executeInternal(JobExecutionContext arg0) throws JobExecutionException { courseService.start(); } private CourseService courseService; public CourseService getCourseService() { return courseService; } public void setCourseService(CourseService courseService) { this.courseService = courseService; } }
?
??编写配置文件
需要说明的是,我们有两种trigger,分别是simple和cron模式,simple方式和timertask类似,采用设置interval方式进行调度,而cron可以特有的语法很详细的定制调度执行时间,具体描述在配置文件的注释中
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd" ><beans> <bean id="courseService" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers"> <list> <ref bean="cronReportTrigger"/> </list> </property> </bean></beans>
?
?