1.首先配置好Spring环境,加入定时任务的配置文件,如下:
<?xml version="1.0" encoding="GB2312"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<!-- Configure the sync Service -->
<bean name="randomSyncJob"
class="org.springframework.scheduling.quartz.JobDetailBean">
<property name="jobClass">
<value>com.iman.wrms.webservice.sync.task.QuartzSyncJob</value>
</property>
<property name="jobDataAsMap">
<map>
<entry key="timeout">
<value>5</value>
</entry>
</map>
</property>
</bean>
<!-- 配置触发器 -->
<bean id="cronTrigger"
class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail">
<ref bean="randomSyncJob" />
</property>
<!-- 每天0点0分,触发RandomPriceJob,具体说明见附录 -->
<property name="cronExpression">
<value>0 0 0 * * ?</value>
</property>
</bean>
<bean autowire="no"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<!-- 添加触发器 -->
<property name="triggers">
<list>
<ref local="cronTrigger" />
</list>
</property>
</bean>
</beans>
2.编写实现任务的处理代码
package com.iman.wrms.webservice.sync.task;
import org.apache.log4j.Logger;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.springframework.scheduling.quartz.QuartzJobBean;
import com.zhengxin.wrm.opm.dbutil.JdbcWrmDelegate;
/**
* @author:Jakemanse
* @time :2008-1-25
*
description : 定时同步EOMS组织处理类
*
*/
public class QuartzSyncJob extends QuartzJobBean {
private final Logger logger = Logger.getLogger(getClass());
/**
* 执行任务
*/
protected void executeInternal(JobExecutionContext context)
throws JobExecutionException {
logger.info("---------------Job start---------------------");
JdbcWrmDelegate jdbcDelegate;
try{
jdbcDelegate = new JdbcWrmDelegate();
// 执行具体操作
logger.info("正在同步机构信息.....");
jdbcDelegate.SyncOpmOrganInfo();//同步机构信息 success
logger.info("正在同步用户信息.....");
jdbcDelegate.SyncOpmUserInfo();//同步用户信息 success
// jdbcDelegate.SyncOpmJobInfo();// 同步job信息 success
// jdbcDelegate.SyncOpmRoleInfo();//同步Role信息
logger.info("正在执行本系统的同步存储过程.....");
// jdbcDelegate.ExecutePro(); //执行存储过程
logger.info("所有同步信息执行完毕.");
}catch(Exception e){
logger.error("机构或用户信息同步过程中出错:"+e.getCause());
e.printStackTrace();
}
}
}
实现定时功能,编写自己的类,需要继承Spring 提供的
import org.springframework.scheduling.quartz.QuartzJobBean;
然后 覆盖该类的
protected void executeInternal(JobExecutionContext context)
throws JobExecutionException ; 方法,所有定时任务实现,都在这个方法里就可以了。
分享到:
相关推荐
spring 定时任务 示例代码
Spring定时任务的几种实现,欢迎交流!
Spring3.0定时任务简单实例web工程 myeclipse项目 下载导入可用
spring自带定时任务程序,其中包括定时任务配置的xml文件、定时任务测试类和定时任务说明文档,仅供大家参考使用。
Spring3.x企业应用开发实战 中 Spring 定时任务源码(spring 三种定时任务的实现方式),Spring quartz java 定时器 定时任务 源码
2.通过Spring是JAR-quartz写的一个定时任务 1)普通的定时任务,定时完成指定的任务 2)通过前台动态分配定时任务 可指定多个任务,可同时执行任务,可以精确到时分秒扫描并执行任务 3)可以完成稍微复杂点的任务 ...
通过配置文件来实现定时任务
eclipse maven project 博文链接:https://lj-zhu.iteye.com/blog/892306
spring定时任务的一个简单示例程序,包括需要引入的jar包,eclipse源代码直接压缩的,解压导入到自己的eclipse中即可,本人所用的是eclipseJ2EE版本
使用mybatis读写mysql数据库, spring实现定时任务, 按照间隔时间或固定时间方式执行定时任务
Spring中执行定时任务是个很常见的需求,这里是详细的规则说明,有需要的朋友可以参考,跟linux中的crontab规则很相似。
Spring中的定时任务介绍 下面我们来看一下Spring中提供的定时任务开发: 在Spring中开发定时任务,分为3个步骤。 1 创建定时任务 2 注册定时任务 3 启动定时任务
Spring3.2.6定时任务+线程池,实现系统后台任务多线程处理
这是个人练习的spring配置定时任务方面的例子,备忘用,不建议下载
spring spring spring spring定时任务所需jar 齐全
Spring普通定时任务和动态设置定时任务.本资源仅供Spring有关的框架学习使用
spring boot 定时任务的源码,spring boot 整合定时任务
完整的javaspring定时任务的实现,通过配置数据库可以实现定时任务的修改,不必频繁的修改配置文件,大家可以自行在上面实现更多的定时任务管理。数据库表结构已经上传
Spring 框架自带定时任务使用 stask.xml Quartz定时任务