`
flysky7931
  • 浏览: 43677 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

Quartz --实现由时间触发的事件任务

    博客分类:
  • J2EE
阅读更多
配置Cron触发器
	
<bean id="autoStatTrgger"
class="org.springframework.scheduling.quartz.CronTriggerBean">
    <!--配置任务调度的作业-->
    <property name="jobDetail">
        <ref bean="autoStatInvokingJobDetail" />
    </property>
    <!--配置任务调度的Cron表达式-->
    <property name="cronExpression">
    <!-- 
     表达式由7部分组成:
     1。秒
      2.分
      3.小时
      4.一月中的某天
      5.月份
      6.星期
      7.年份(省略)
    -->
        <value>0 0 6 * * ?</value>
    </property>
</bean>


指定触发器关联的作业
	
<bean id="autoStatInvokingJobDetail"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    <!--指定作业对应的类-->
    <property name="targetObject">
        <ref bean="autoStat" />
    </property>
    <!--指定作业执行的方法-->
    <property name="targetMethod">
        <value>run</value>
    </property>
</bean>




配置作业类
	
<bean id="autoStat" class="jreap.game.account.quartz.AutoStat">
    <property name="memberService" ref="MemberService"></property>
    <property name="accountService" ref="AccountService"></property>
</bean>

<!--MemberService-->
<bean id="MemberService" parent="baseTxService">
    <property name="target">
    <bean id="MemberServiceTarget"class="jreap.game.member.service.MemberServiceImpl">
        <property name="dao" ref="MemberDao"/>
        <property name="memberDao" ref="MemberDao"/>
        <property name="memberConfigDao" ref="MemberConfigDao"/>
        <property name="agentConfigDao" ref="AgentConfigDao"/>
    </bean>
    </property> 
</bean>

<!-- account模块SERVICE配置 -->
<bean id="AccountService" parent="baseTxService">
    <property name="target">
        <bean id="AccountServiceTarget"class="jreap.game.account.service.AccountServiceImpl">
            <property name="dao" ref="AccountDao"/>
            <property name="accountDao" ref="AccountDao"/>
        </bean>
    </property> 
</bean>


编写AutoStat类并添加run方法。这里的run方法是实际作业的内容

配置实际调度
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
    <property name="triggers">
        <!--实际的触发器列表-->
        <list>
            <ref bean="autoStatTrgger" />
        </list>
    </property>
</bean>


配置完上述后,系统会自动查找触发器并根据cronExpression来执行对应的作业方法
分享到:
评论
1 楼 liuqimeng1 2011-02-19  
  写的很好,顺序排的好像有点乱。。。呵呵

相关推荐

    Spring Quartz如何动态配置时间

    在将时间规则转换为 Unix Cron Expression 时,我们需要使用 Quartz 提供的 CronExpression 类来实现时间规则的解析和转换。 实践经验 在实际应用中,我们需要注意以下几点: * 需要根据业务需求选择合适的时间...

    Quartz定时任务

    Quartz.Net是一个定时任务框架,可以实现异常灵活的定时任务,开发人员只要编写少量的代码就可以实现“每隔1小时执行”、“每天22点执行”、“每月18日的下午执行8次”等各种定时任务。 Quartz.Net中的概念:计划者...

    quartz的分布式调度大致分两种方式实现

    当Triggers的触发时间发生时,获取任务的第一个节点(通过在其上放置一个锁定)是将触发它的节点。 3.当其中一个节点在执行一个或多个作业期间失败时发生故障切换。当节点出现故障时,其他节点会检测到该状况并识别...

    基于SpringBoot+Quartz的轻量级分布式定时任务调度系统源码+项目说明+sql数据库.zip

    - Cron执行表达式:按照CRON内容,触发任务调度 - 间隔时间(秒):按照固定的间隔时间,周期性触发 - 请求类型:`GET`,`POST`,`POST_JSON` - 请求路径:将和主机地址拼接,作为最终的任务请求地址 - 请求参数:...

    QuartzTest.rar

    Quartz.net通过配置文件创建任务,实现任务的暂停、任务的恢复、下次触发时间的显示。Quartz.net通过配置文件创建任务,实现任务的暂停、任务的恢复、下次触发时间的显示。

    Spring Boot中的@Scheduled注解:定时任务的原理与实现

    这个注解主要基于Java的内置Timer类以及Quartz等定时任务库,但在Spring Boot中,它提供了更加简洁和易用的方式来实现定时任务。 # 实现原理 @Scheduled注解的实现原理主要依赖于Spring框架的任务调度机制。当...

    Quartz开源作业调度库-其他

    1、应用程序可以通过实现一个或多个侦听器接口来捕获调度事件,以监视或控制作业/触发器的行为。 2、可以使用Plug-In机制为Quartz添加功能,例如保留作业执行的历史记录,或从文件加载作业和触发器定义。 3、Quartz...

    当当网开源的分布式作业调度组件 Elastic-Job.zip

    目录结构说明使用步骤开发指南使用限制运维平台阅读源码编译问题说明实现原理作业分片策略监控快速上手(感谢第三方志愿者 泽伟@心探索科技 提供文档)InfoQ新闻Elastic-Job Wiki (由社区志愿者自由编辑的) ...

    SwarmTask:SwarmTask,蜂群任务调度框架(.Net[C#])

    以高性能,高效率为升级设计目标,升级项目为VS2015 IDE环境 , .Net版本4.5Build & Test Status一、功能摘要:启动触发时间采用开源的Quartz.Net项目的Cron表达式:"0 0 12 * * ?" 每天中午12(UTC时间)点触发;多...

    dynamicquartz:Spring Boot2与石英结合使用,可以使用Web UI配置动态计划作业

    typora-root-url pictures Dynamic Quartz ​ 最近在公司实习,发现公司有一套spring+Quartz的动态任务管理...Trigger(触发器):触发任务任务执行的时间或规则。在任务调度Quartz中,Trigger主要的触发器有:Simple

Global site tag (gtag.js) - Google Analytics