`
awdxzc
  • 浏览: 333123 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

quartz配置含表达式的事务以及集群上quartz配置

    博客分类:
  • J2EE
阅读更多
写一个applicationContext-quartz.xml作为spring的插入quartz管理的配置文件。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" "http://www.springframework.org/dtd/spring-beans-2.0.dtd">

<beans>
    <bean name="quartzScheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
        <property name="dataSource">
            <ref bean="dataSource"/>
        </property>
        <property name="applicationContextSchedulerContextKey" value="applicationContextKey"/>
        <property name="configLocation" value="classpath:quartz.properties"/>		
		<property name="triggers">
			<list>				  		 
				<ref bean="trigger1"/>
				<ref bean="trigger2"/>						 					   		  	
			</list>
		</property>		
    </bean>
    
    <bean id="jobDetail1" class="frameworkx.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
        <property name="targetObject" ref="simpleService"/>
        <property name="targetMethod" value="testMethod1"/>
		<property name="shouldRecover" value="true"/>
    </bean>
    <bean id="trigger1" class="org.springframework.scheduling.quartz.CronTriggerBean">
        <property name="jobDetail" ref="jobDetail1"/>
        <property name="cronExpression" value="0/5 * * ? * * *"/>
    </bean>    
  
    <bean id="jobDetail2" class="frameworkx.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
        <property name="targetObject" ref="simpleService"/>
        <property name="targetMethod" value="testMethod2"/>
		<property name="shouldRecover" value="true"/>
    </bean>
    <bean id="trigger2" class="org.springframework.scheduling.quartz.SimpleTriggerBean">
        <property name="jobDetail" ref="jobDetail2"/>
        <property name="startDelay" value="1"/>
        <property name="repeatCount" value="100"/>
        <property name="repeatInterval" value="1000"/>
    </bean>
</beans>


很明显,这里jobdetail使用的是frameworkx.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean
因为之前如果使用org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean会出现一系列序列化问题,这里我们直接使用几个牛人写的这2个类来覆盖使用。


如果是配置集群quartz,让我们来关注下位于classpath:quartz.properties的这个配置文件。
#==============================================================  
#Configure Main Scheduler Properties  
#==============================================================   
org.quartz.scheduler.instanceName = TestScheduler1   
org.quartz.scheduler.instanceId = AUTO  

#==============================================================  
#Configure ThreadPool  
#============================================================== 
org.quartz.threadPool.class = org.quartz.simpl.SimpleThreadPool
org.quartz.threadPool.threadCount = 10
org.quartz.threadPool.threadPriority = 5
org.quartz.threadPool.threadsInheritContextClassLoaderOfInitializingThread = true

#==============================================================  
#Configure JobStore  
#============================================================== 
org.quartz.jobStore.misfireThreshold = 60000
org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTX
org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.StdJDBCDelegate
org.quartz.jobStore.tablePrefix = QRTZ_
org.quartz.jobStore.maxMisfiresToHandleAtATime=10
org.quartz.jobStore.isClustered = true  
org.quartz.jobStore.clusterCheckinInterval = 20000  


具体里面很多配置的信息可以自己上网搜索,必须的也就是这几个,isClustered=true就是用来设置配置多节点集群的。使用中心数据库集群的方式需要的sql脚本就在quartz源代码包里面的doc-->dbTable里面有。
还有需要说明的是一些关于对象序列话的问题,quartz建立集群需要所有jobdetail里面的对象具有序列化能力,当然实现Serializable接口是必须的。如果里面有些你不想序列化的对象可以使用java的transient关键字来控制。例如一个spring的service:
private transient PostIndexService postIndexService;

下面放出几个例子供以后参考用。还有需要了解的基本上网上可以搜索到,包括quartz.properties里面配置quartz的插件,网上也可以搜索的到。这里我就不写了。


转载一篇不错的关于quartz的文章:
http://wordpress.huabaner.net/?p=327




分享到:
评论

相关推荐

    QuartzAPI以及例子

    它有很多特征,如:数据库支持,集群,插件,支持cron-like表达式等等。 你曾经需要应用执行一个任务吗?这个任务每天或每周星期二晚上11:30,或许仅仅每个月的最后一天执行。一个自动执行而无须干预的任务在执行...

    Quartz.NET 调度系统 demo

    前言:8月份翻译了Quartz.NET的官方课程:开源的作业调度框架 - Quartz.NET, 有的朋友抱怨难用,确实,目前Qiartz.NET的最新版本还是0.6,还...它有很多特征,如:数据库支持,集群,插件,支持cron-like表达式等等。

    Quartz-Job-Scheduling-Framework-中文版-V0.9.1.zip

    内容提要:如何配置使 Quartz 节点工作在集群环境中。 第十一章. Quartz 集群 (第四部分) 内容提要:运行 Quartz 集群节点,及提供了一个关于使用 Quartz 集群的 Cookbook 参考。 第十二章. Quartz Cookbook (第一...

    quartz.net说明文档

    Quartz是一个开源的作业调度框架,它完全由Java写成,并设计...它有很多特征,如:数据库支持,集群,插件,EJB作业预构 建,JavaMail及其它,支持cron-like表达式等等。 quartz.net是java的.net移植版本,用法一样。

    Quartz.NET demo

    Quartz.NET是一个开源的作业调度框架,是OpenSymphony 的 ...它有很多特征,如:数据库支持,集群,插件,支持cron-like表达式等等。 该附件是个实例,使用quartz.net 2.1.2版本编写,可以正常运行,欢迎下载使用

    Quartz_2.0.2_API.CHM chm格式

    Quartz 2.0.2 API chm 带索引和全文检索,方便携带和查询 Quartz是一个开源的作业调度框架,它完全由Java写...它有很多特征,如:数据库支持,集群,插件,EJB作业预构 建,JavaMail及其它,支持cron-like表达式等等。

    Quartz.net定时器

    它有很多特征,如:数据库支持,集群,插件,支持cron-like表达式等等。  你曾经需要应用执行一个任务吗?这个任务每天或每周星期二晚上11:30,或许仅仅每个月的最后一天执行。一个自动执行而无须干预的任务在...

    quartz-all-1.6.1.jar

    Quartz是一个开源的作业调度框架,它完全由Java写成,并设计用于J2SE和J2EE应用中。它提供了巨大的灵 活性而...它有很多特征,如:数据库支持,集群,插件,EJB作业预构 建,JavaMail及其它,支持cron-like表达式等等。

    Quartz_net框架及官方开发文档

    作业调度框架插件及帮助文档,Quartz.NET是一个开源的作业调度框架,是OpenSymphony 的 Quartz API的.NET移植,它用C#写成,可用于winform和asp...它有很多特征,如:数据库支持,集群,插件,支持cron-like表达式等等。

    quartz-2.1.7_API CHM格式

    它有很多特征,如:数据库支持,集群,插件,EJB作业预构 建,JavaMail及其它,支持cron-like表达式等等。 从之前发布其他chm文件下载用户的反映看,有不少朋友反映下载后打开无法显示,这一般不是chm文件的问题,...

    Quartz.NET-1.0.2.rar

    Quartz.NET是一个开源的作业调度框架,是OpenSymphony 的 Quartz API的.NET移植,它用C#写成,可用于winform和asp.net应用中。...它有很多特征,如:数据库支持,集群,插件,支持cron-like表达式等等。

    Quartz入门到精通 中文WORD版.rar

    Quartz是一个开源的作业调度框架,它完全由Java写成,并设计用于J2SE和J2EE应用中。它提供了巨大的灵活性而不...它有很多特征,如:数据库支持,集群,插件,EJB作业预构建,JavaMail及其它,支持cron-like表达式等等。

    .Net Core中使用Quartz.Net实践记录

    它有很多特征,如:数据库支持,集群,插件,支持cron-like表达式等等。 通俗说它的功能是:比如说我想每天晚上2点让程序或网站执行某些代码,或者每隔5秒种我想查看是否有新的任务要处理等。 Quartz.Net是根据Java...

    详细讲解Quartz如何从入门到精通下载

    Quartz是一个开源的作业调度框架,它完全由 Java写成,并设计用于J2SE和J2EE应用中。它提供了巨大的灵活性而...它有很 多特征,如:数据库支持,集群,插件,EJB作业预构建,JavaMail及其它,支持cron-like表达式等等.

    Quartz调度框架

    Quartz是一个开源的作业调度框架,它完全由Java写成,并设计用于J2SE和J2EE应用中。它提供了巨大的灵活性而不...它有很多特征,如:数据库支持,集群,插件,EJB作业预构建,JavaMail及其它,支持cron-like表达式等等。

    quartznet2.0

    Quartz.NET是一个开源的作业调度框架,是 OpenSymphony 的 Quartz API 的.NET移植,它用C#写成,可用于winform和asp.net应用中。...它有很多特征,如:数据库支持,集群,插件,支持cron-like表达式等等

    Spring.3.x企业应用开发实战(完整版).part2

     《Spring3.x企业应用开发实战》是在《精通Spring2.x——企业应用开发详解》的基础上,经过历时一年的重大调整改版而成的,本书延续了上一版本追求深度,注重原理,不停留在技术表面的写作风格,力求使读者在熟练...

    Spring3.x企业应用开发实战(完整版) part1

     《Spring3.x企业应用开发实战》是在《精通Spring2.x——企业应用开发详解》的基础上,经过历时一年的重大调整改版而成的,本书延续了上一版本追求深度,注重原理,不停留在技术表面的写作风格,力求使读者在熟练...

    asp.net任务调度

    平台基于quartz.net进行任务调度功能开发,采用C#代码编写, 支持corn表达式和第三方自定义的corn表达式扩展。 架构以插件形式开发,具有良好的功能扩展性,稳定性,简单性,便于第三方开发人员进一步进行功能扩展。...

Global site tag (gtag.js) - Google Analytics