具体的步骤如下:
1 首先编写业务类,该类继承了org.springframework.scheduling.quartz.QuartzJobBean,主要的逻辑在executeInternal方法中编写
2 配置spring的applicationContext.xml文件
2.1 在spring配置文件中申明这个业务,配置任务JobDetailBean
2.2在spring配置文件中配置调度工作,即,配置触发器 CronTriggerBean
2.3调度一个cron工作,即,配置调度器 SchedulerFactoryBean
3 所需要的jar包:
spring.jar,quartz.jar,commons-logging-1.0.4.jar,commons-dbcp-1.2.2.jar,commons-pool-1.3.jar
以下本人的一个demo
package com.thinkway.erp360.presentation.web.controller.sap;
import org.springframework.scheduling.quartz.QuartzJobBean;
import com.thinkway.erp360.business.service.iface.SalesOrderDeliverService;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
public class DailySynSalesOrderDeliverJob extends QuartzJobBean {
public DailySynSalesOrderDeliverJob(){}
protected void executeInternal(JobExecutionContext jobContext)
throws JobExecutionException {
//业务处理-----
salesOrderDeliverService.createSalesOrderDeliver();
}
private SalesOrderDeliverService salesOrderDeliverService = null;
public SalesOrderDeliverService getSalesOrderDeliverService() {
return salesOrderDeliverService;
}
public void setSalesOrderDeliverService(
SalesOrderDeliverService salesOrderDeliverService) {
this.salesOrderDeliverService = salesOrderDeliverService;
}
}
配置spring的applicationContext.xml文件
<!-- 声明调度工作 -->
<bean id="dailySynSalesOrderDeliverJob" class="org.springframework.scheduling.quartz.JobDetailBean">
<property name="jobClass" value="com.thinkway.erp360.presentation.web.controller.sap.DailySynSalesOrderDeliverJob" />
<property name="jobDataAsMap">
<map>
<entry key="salesOrderDeliverService" value-ref="salesOrderDeliverService"/>
</map>
</property>
</bean>
<!-- 调度一个cron工作 定为每天晚上11:59执行-->
<bean id="cronSynTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail" ref="dailySynSalesOrderDeliverJob" />
<property name="cronExpression" value="0 59 0 * * ?" />
</bean>
<!-- 启动定时调度 -->
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="cronSynTrigger"/>
</list>
</property>
</bean>
注意:关于设定的时间何时出发,这个定义方法可以上网搜索,在此不做太多说明。
分享到:
相关推荐
spring任务调度(Quartz )非常基础,
Spring整合任务调度框架Quartz,本文档详细介绍了Spring整合任务调度框架Quartz,希望可以帮助学习者
Spring实现任务调度.ppt Spring实现任务调度_代码演示 quartz-all-1.6.1.jar
Spring Quartz 任务调度实例 可直接运行 可应用服务器启动调用 也可main入口调用 主要用于打jar包用
该资源描述了用spring+quartz搭建的环境来管理任务调度的基本配置
spring整合quartz定时任务调度..........
里面包含了两个工程项目: 1.Java project工程(含jar包,JDK1.6)。 是spring+quartz的任务调度实例。 2.Java web工程(含jar包,JDK1.7)。 spring+mybatis+quartz任务调度实例
spring+quartz任务调度代码版
Spring实现任务调度.ppt Spring实现任务调度_代码演示 quartz-all-1.6.1.jar
Spring+Quartz实现任务调度的小例子.本来不要资源分的,可是CSDN发布资源最低要求填写分值为1分,没办法了。
3、调度中心HA(中心式):调度采用中心式设计,“调度中心”基于集群Quartz实现,可保证调度中心HA; 4、执行器HA(分布式):任务分布式执行,任务"执行器"支持集群部署,可保证任务执行HA; 5、任务Failover:...
实现了spring配置比较流行的任务调度操作,java timer 和 quartz俩种方式 并且有注释描述。
Spring任务调度的几种实现方法,包括持续运行某个方法,固定某个时间点运行
本资源是一个最新 Spring 4.2.2 集成 Quartz Scheduler 2.2.2 的一个简单的 demo,也是博客《最新 Spring 4.2.2 集成 Quartz Scheduler 2.2.2 任务调度示例》的配套示例项目,该博客地址是:...
spring quartz java任务调度 完整 可执行
schedule-job, 基于Spring Boot Quartz 的分布式任务调度系统
集成了分布式任务调度框架 Quartz ,任务存储于数据库。 使用SpringMVC作为路由控制, 集成 Swagger2 提供实时 RESTful API文档。 数据持久层集成 Mybatis 框架。 使用自定义注解 @TargetDataSource 实现了多数据源...
Spring中Quartz任务调度器cronexpression配置说明
Spring Quartz 定时调度任务,带中文注解与jar文件,导入项目即可直接运行。
Spring 4.2.2 集成 Quartz Scheduler 2.2.2 的一个简单的 demo