SpringQtz 时间任务调度

1、配置所需要maven jar包

<!-- 任务调度需要的jar包-->
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>1.8.5</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>3.2.4.RELEASE</version>
</dependency>

<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>3.2.4.RELEASE</version>
</dependency>

<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>3.2.4.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>3.2.4.RELEASE</version>
</dependency>
<!-- 任务调度需要的jar包-->

2、配置文件spring-timer.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<!-- 配置调度程序quartz ,其中配置JobDetail有两种方式-->
<!--方式一:使用JobDetailBean,任务类必须实现Job接口 -->
<!-- <bean id="myjob" class="org.springframework.scheduling.quartz.JobDetailBean"> -->
<!-- <property name="name" value="exampleJob"></property> -->
<!-- <property name="jobClass" value="com.zbb.cn.filter.SpringQtz"></property> -->
<!-- <property name="jobDataAsMap"> -->
<!-- <map> -->
<!-- <entry key="service"> -->
<!-- <value>simple is the beat</value> -->
<!-- </entry> -->
<!-- </map> -->
<!-- </property> -->
<!-- </bean> -->
<!--运行时请将方式一注释掉! -->
<!--
方式二:使用MethodInvokingJobDetailFactoryBean,任务类可以不实现Job接口,通过targetMethod指定调用方法
-->
<!-- 定义目标bean和bean中的方法 -->
<bean id="SpringQtzJob" class="com.cc.hkjc.controller.backstage.interceptor.SpringQtz">

</bean>

<bean id="SpringQtzJobMethod"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject">
<ref bean="SpringQtzJob" />
</property>
<property name="targetMethod"> <!-- 要执行的方法名称 -->
<value>execute</value>
</property>
</bean>

<!-- ======================== 调度触发器 ======================== -->
<bean id="CronTriggerBean" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail" ref="SpringQtzJobMethod"></property>
<!-- <property name="cronExpression" value="0/5 * * * * ?"></property> -->
<property name="cronExpression" value="0 0 10 * * ?"></property> <!-- 每天晚上十点触发 -->
</bean>

<!-- ======================== 调度工厂 ======================== -->
<bean id="SpringJobSchedulerFactoryBean"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref bean="CronTriggerBean" />
</list>
</property>
</bean>

</beans>

package com.cc.hkjc.controller.backstage.interceptor;

import java.util.Calendar;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.annotation.Resource;

import org.apache.cxf.common.util.StringUtils;

import com.cc.hkjc.domain.HcNum;
import com.cc.hkjc.domain.Zstj;
import com.cc.hkjc.service.PhoneService;
import com.cc.hkjc.service.ZstjService;

public class SpringQtz {
private static int count=0;
@Resource
private ZstjService zstjService;

@Resource
private PhoneService phoneService;

public void execute() {
  
}
}

4、在web.xml配置spring-timer.xml

时间: 2024-09-30 16:17:38

SpringQtz 时间任务调度的相关文章

spring整合quartz时间任务调度框架

spring整合quartz框架 1.创建maven工程 2.导入jar包(pom.xml) <dependencies> <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>2.2.1</version> </dependency> <dependency&

Spring+quartz 动态任务调度

需求是这样的:系统中会有很多的执行时间,三个或者四个这样,不确定,以后可能是五个!当用户在页面添加执行时间时,我们后台也要对应执行用户添加的时间. 数据库设计: DROP TABLE IF EXISTS `test_time_task`; CREATE TABLE `test_time_task` ( `status` int(11) DEFAULT NULL COMMENT '状态:0为正常,1为禁用', `job` varchar(255) CHARACTER SET utf8 DEFAUL

kettle(一)概述

最近两个月一直和kettle打交道,从开始的没听说过,到现在能够熟练运用,不得不说项目驱动下,学习东西是最快的.好了,虽然使用kettle应付项目的任务绰绰有余,但是还是想系统的学习一下,总结一下.例如job用的比较少,kettle的集群模式没有涉及到等等. 说起kettle,还是先说说ETL(Extract-Transform-load,即抽取,转换,加载)数据仓库技术,是用来处理将数据从来源(例如:单位基础服务器)经过抽取,转换,加载到达至目的端(正在做的项目)的过程.也就是新的项目需要使用

Spring定时任务实例

一.Quartz介绍 在企业应用中,我们经常会碰到时间任务调度的需求,比如每天凌晨生成前天报表,每小时生成一次汇总数据等等.Quartz是出了名的任务调度框架,它可以与J2SE和J2EE应用程序相结合,功能灰常强大,轻轻松松就能与Spring集成,使用方便. 二.Quartz中的概念 主要有三个核心概念:调度器.任务和触发器.三者关系简单来说就是,调度器负责调度各个任务,到了某个时刻或者过了一定时间,触发器触动了,特定任务便启动执行.概念相对应的类和接口有: 1)JobDetail:望文生义就是

贪心小总结

介绍几种贪心题型 1.选择不相交区间: 按照结束时间从大到小排序,如果区间左端点大于当前最右点就选,否则不选. 例题:活动安排: #include<cstdio> #include<algorithm> #include<iostream> #include<cstring> #include<cmath> #include<queue> using namespace std; const int maxm=1100; int n,

Spring 注解 @Scheduled(cron = &quot;0 0/10 * * * ? &quot;) 任务调度动态改变时间

不需要重启应用就可以动态的改变Cron表达式的值 import java.util.Date; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.context.annotation.Lazy; import org.springframework.scheduling.Trigger; import org.springframework.scheduling.TriggerC

scheduletask任务调度(2间隔时间)

Trigger trigger = TriggerBuilder.newTrigger() .withIdentity("myTrigger", "myTriggerGroup") .withSchedule(CronScheduleBuilder.cronSchedule("0 30 15 ? * 1#3 2016")) .startAt(new Date(System.currentTimeMillis() + 1000)) .build()

Spring整合定时任务调度框架Quartz实战

定时的任务处理在程序开发中应用的相当普遍,之前一直使用JDK的Timer类库来做任务调度功能不是很方便,因为它不能像cron服务那样可以指定具体年.月.日.时和分的时间,我们只能将时间通过换算成微秒后传给它,而在quartz中我们只需要设置cronExpression就可以完成定时的周期性的方法调用.Quartz中最核心的是任务调度器Scheduler,它负责管理Job,Trigger和 Calendar,而每一个Job就是一个需要执行任务的java类,在Schelduler调度任务时 执行的就

开源分布式任务调度平台Cuckoo-Schedule

1         概述 1.1      平台概述 Cuckoo-Schedule是基于Quartz-Schedule的轻量级任务调度框架,具有易学习.易上手.开发高效稳定的特点.Demo地址:http://cuckoo.hellosr.com,测试用户:guest,密码:123456. Cuckoo-Schedule对调度模块与执行模块进行解耦,调度模块支持集部署.任务分组.任务依赖.权限管理.邮件告警.调度日志记录等功能,并提供WEB页面对任务进行管理,支持任务实时调度情况的查看.变更以及