您的位置:首页 > 编程语言 > Java开发

Quartz任务调度框架和Spring的整合使用

2017-09-27 15:15 706 查看

Spring中applicationContext.xml的配置

<!--这里指定执行任务的类和方法-->
<bean id="testJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject" ref="logService"/>
<property name="targetMethod" value="work"/>
</bean>
<!--触发器1,使用cron表达式-->
<bean id="testTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="name" value="default"/>
<property name="group" value="default"/>
<property name="jobDetail" ref="testJob"/>
<!--表示每10s执行一次-->
<property name="cronExpression" value="0/10 * * * * ?" />
</bean>

<!--触发器2,具有延迟启动功能-->
<bean id="testTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean">
<property name="jobDetail" ref="testJob" />
<!--延迟10s启动-->
<property name="startDelay" value="10000" />
<!--每10s执行一次-->
<property name="repeatInterval" value="10000" />
</bean>

<!--调度器-->
<bean id="scheduler" lazy-init="true" autowire="no"  class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<!--设置触发器-->
<ref bean="testTrigger"/>
</list>
</property>
</bean>


任务执行类



执行效果



关闭定时调度

//从Spring中获取到调度器
Scheduler scheduler=(Scheduler) applicationContext.getBean("scheduler");
//将其干掉
scheduler.shutdown();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: