Spring结合java Quartz配置实例代码

原文:Spring结合java
Quartz配置实例代码

源代码下载地址:http://www.zuidaima.com/share/1787232442715136.htm

各种企业应用几乎都会碰到任务调度的需求,就拿论坛来说:每隔半个小时生成精华文章的RSS文件,每天凌晨统计论坛用户的积分排名,每隔30分钟执行锁定用户解锁任务。对于一个典型的MIS系统来说,在每月1号凌晨统计上个月各部门的业务数据生成月报表,每半个小时查询用户是否已经有快到期的待处理业务……,这样的例子俯拾皆是,不胜枚举。

Quartz 在开源任务调度框架中的翘首,它提供了强大任务调度机制,难能可贵的是它同时保持了使用的简单性。Quartz 允许开发人员灵活地定义触发器的调度时间表,并可以对触发器和任务进行关联映射。

Spring为创建Quartz的Scheduler、Trigger和JobDetail提供了便利的FactoryBean类,以便能够在Spring 容器中享受注入的好处。此外Spring还提供了一些便利工具类直接将Spring中的Bean包装成合法的任务。Spring进一步降低了使用Quartz的难度,能以更具Spring风格的方式使用Quartz。概括来说它提供了两方面的支持:

1)为Quartz的重要组件类提供更具Bean风格的扩展类;

2)提供创建Scheduler的BeanFactory类,方便在Spring环境下创建对应的组件对象,并结合Spring容器生命周期进行启动和停止的动作。

配置文件:

<?xml version=" 1.0 " encoding=" UTF-8 " ?>
 <! DOCTYPE beans PUBLIC " -//SPRING//DTD BEAN//EN " " http://www.springframework.org/dtd/spring-beans.dtd ">
 <beans>
 <!-- 要调用的工作类 -->
 <bean id=" quartzJob " class=" test.Task "></bean>
 <!-- 定义调用对象和调用对象的方法 -->
 <bean id=" jobtask "
 class=" org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean ">
 <!-- 调用的类 -->
 <property name=" targetObject ">
 <ref bean=" quartzJob " />
 </property>
 <!-- 调用类中的方法 -->
 <property name=" targetMethod ">
 <value> work </value>
 </property>
 </bean>
 <!-- 定义触发时间 -->
 <bean id=" doTime "
 class=" org.springframework.scheduling.quartz.CronTriggerBean ">
 <property name=" jobDetail ">
 <ref bean=" jobtask " />
 </property>
 <!-- cron表达式 -->
 <property name=" cronExpression ">
 <value> , , , , , , , , , * * * * ?</value>
 </property>
 </bean>
 <!-- 总管理类 如果将lazy - init=‘ false ‘ 那么容器启动就会执行调度程序 -->
 <bean id=" startQuertz " lazy - init=" false " autowire=" no "
 class=" org.springframework.scheduling.quartz.SchedulerFactoryBean ">
 <property name=" triggers ">
 <list>
 <ref bean= " doTime " />
 </list>
 </property>
 </bean>
 </beans>

要调度的工作类:

public class Task{
 public void work() {
 System.out.println( " Quartz的任务调度! " );
 }
}

主测试文件:

public class QuartzTest {
 public static void main(String[] args) {
 System.out.println( " Test start. " );
 ApplicationContext context= new ClassPathXmlApplicationContext( " applicationContext.xml " );
 // 如果配置文件中将startQuertz bean的lazy-init设置为false 则不用实例化
 System.out.print( " Test end..\n " );
 }
}

注意:项目中需要加载需要加入spring.jar   quartz-all-1.6.0.jar   log4j-1.2.14.jar   commons-collections.jar   jta.jar   commons-logging.jar这几个包

时间: 2024-11-08 09:12:38

Spring结合java Quartz配置实例代码的相关文章

java计划任务调度框架quartz结合spring实现调度的配置实例代码分享

点击链接加入群[JavaEE(SSH+IntelliJIDE+Maven)]:http://jq.qq.com/?_wv=1027&k=L2rbHv 一:quartz简介 OpenSymphony 的Quartz提供了一个比较完美的任务调度解决方案. Quartz 是个开源的作业调度框架,定时调度器,为在 Java 应用程序中进行作业调度提供了简单却强大的机制. Quartz中有两个基本概念:作业和触发器.作业是能够调度的可执行任务,触发器提供了对作业的调度 二:quartz spring配置详

quartz spring配置实例代码demo下载

原文:quartz spring配置实例代码demo下载 源代码下载地址:http://www.zuidaima.com/share/1550463459560448.htm

spring框架整合使用定时任务框架java quartz的示例代码配置

原创整理不易,转载请注明出处:spring框架整合使用定时任务框架java quartz的示例代码配置 代码下载地址:http://www.zuidaima.com/share/1775583461723136.htm 有时候我们的任务(Job)需要再某些任务完成之后才能进行:例如从旧的数据库批量导数据的时候:需要现将被其他数据依赖的数据导入新的数据库:然后再进行关系的导入..在这种情况下我们就可以使用Quartz的listener来做文章了. 首先我们写一个主任务的类,命名为MainJob:她

spring框架中多数据源创建加载并且实现动态切换的配置实例代码

原文:spring框架中多数据源创建加载并且实现动态切换的配置实例代码 源代码下载地址:http://www.zuidaima.com/share/1774074130205696.htm 在我们的项目中遇到这样一个问题:我们的项目需要连接多个数据库,而且不同的客户在每次访问中根据需要会去访问不同的数据库.我们以往在spring和hibernate框架中总是配置一个数据源,因而sessionFactory的dataSource属性总是指向这个数据源并且恒定不变,所有DAO在使用sessionFa

Spring基于java的配置

第一步:在XML中配置java信息,与自动检测配置XML一样: <context:component-scan base-package="com.springinaction.springidol"> </context:component-scan> 第二步:定义配置类 第三步:声明bean和bean的注入: package com.springinaction.springidol; import org.springframework.context.a

Spring + Quartz配置实例

Spring为创建Quartz的Scheduler.Trigger和JobDetail提供了便利的FactoryBean类,以便能够在Spring 容器中享受注入的好处.此外Spring还提供了一些便利工具类直接将Spring中的Bean包装成合法的任务.Spring进一步降低了使用Quartz的难度,能以更具Spring风格的方式使用Quartz.概括来说它提供了两方面的支持:     1)为Quartz的重要组件类提供更具Bean风格的扩展类:     2)提供创建Scheduler的Bea

[Spring实战系列](15)使用Spring基于Java的配置

并不是所有的开发人员都喜欢使用XML,所以Spring3.0 为这些人准备了一些特别的东西.可以几乎不使用XML而使用纯粹的Java代码来配置Spring应用.并且基于Java的配置拥有一些XML配置所不具有的技巧. 1. 创建基于Java的配置 即使Spring的Java配置可以让我们不使用XML就可以编写大多数的Spring配置,但是我们仍然需要极少量的XML来启用Java配置. <?xml version="1.0" encoding="UTF-8"?&

Spring中的Quartz配置 Spring 定时器 java定时器

QuartzJob.java 本程序是放在web 项目中,启动加载后.5份钟自动调用一次 [java] view plaincopyprint? public class  { public void work() { System.out.println("Quartz的任务调度!!!"); Calendar cal=Calendar.getInstance(); System.out.println(cal.getTime()); } } Spring 配置文件 [html] vi

java socket编程实例代码讲解

1.所谓socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄.应用程序通常通过"套接字"向网络发出请求或者应答网络请求. 操作java socket时用到的最多的三个方法为: accept():主要用于服务器端产生"阻塞",等待客户端的链接请求,并且返回一个客户端的Socket实例: getInputStream():方法主要用来获得网络连接输入,同时返回一个InputStream对象实例: getOutputStream