JavaEE:Quartz使用

微笑、不失礼 提交于 2020-02-05 01:13:19

说明:

quartz用来做任务调度,定期执行指定任务。

一、创建自定义任务类,继承QuartzJobBean:

//自定义任务类
public class ScheduleTask extends QuartzJobBean {
	@Override
	protected void executeInternal(JobExecutionContext context) throws JobExecutionException {
		System.out.println("执行的任务: " + System.currentTimeMillis());
	}
}

二、配置自定义任务类与执行间隔,在spring-config.xml文件beans节点中:

<?xml version="1.0" encoding="UTF-8"?>
<beans ...>
    ...
	<!-- 配置quartz定时执行任务 -->
	<!-- 1.配置自定义任务类 -->
	<bean name="jdFactory" class="org.springframework.scheduling.quartz.JobDetailFactoryBean">
		<property name="jobClass" value="com.yyh.hkw.service.task.ScheduleTask" /><!-- 定时执行此类中的任务 -->
		<property name="name" value="myTask" /><!-- 指定任务名称 -->
		<property name="group" value="jobs" /><!-- 指定任务组 -->
		<property name="durability" value="true" /><!-- 设为true会定时执行,为false时执行一次 -->
		<property name="applicationContextJobDataKey" value="applicationContext" /><!-- 设置执行类中获取ApplicationContext对象的名称 -->
	</bean>
	<!-- 2.配置触发器 -->
	<bean name="ctFactory" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
		<property name="jobDetail" ref="jdFactory" /><!-- 赋值上面创建的JobDetailFactoryBean实例 -->
		<property name="cronExpression" value="0 0/1 * * * ?" /><!-- 每分钟执行1次 -->
	</bean>
	<!-- 3.配置调度器 -->
	<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
		<property name="triggers">
			<list>
				<ref bean="ctFactory" />
			</list>
		</property>
	</bean>
</beans>

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!