zoukankan      html  css  js  c++  java
  • Spring触发器配置Quartz

    参考文献:http://blog.csdn.net/liaq325/article/details/8269439

    http://sundoctor.iteye.com/blog/441951

    业务类

     public class OpenVirtualService {
                public void open(){ //虚机开通
                   //业务逻辑
                }
          }
    
    第一步,在Spring配置文件中增加本业务类
    
          <bean id="openVirtualService" class="com.stone.product.virtual.service.OpenVirtualService"/>
    
          第二步,定义任务。在Spring配置文件中配置代理类MethodInvokingJobDetailFactoryBean,定义任务的详细信息。
    
          <bean id="openVirtualTask" class= "org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
             <property name="targetObject" ref = "openVirtualService" />
             <property name="targetMethod" value ="open" />
             <property name="concurrent" value =" false " />
          </bean>
    
          这个配置告诉Spring,我们的任务是执行id为businessReport的bean中的perform函数。其中参数concurrent告诉Spring,不要并发运行
    
    这个任务。
    
          第三步,配置一个触发器。在Spring配置文件中配置触发器类CronTriggerBean 。
    
          <bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
              <property name="jobDetail" ref="openVirtualTask" />
             <property name="cronExpression" value="0 0 1 1 * ?" />
          </bean>
    
     第四步,配置一个调度器。在Spring配置文件中配置调度器类SchedulerFactoryBean。
    
         <bean class= "org.springframework.scheduling.quartz.SchedulerFactoryBean">
             <property name="triggers">
                <list>
                   <ref bean="cronTrigger" />
                </list>
             </property>
         </bean>
    
         该调度器用于管理触发器。只有在调度器中列表出现的触发器才被Quartz系统调度执行。至此,所有的配置已完成,任务已能正常跑了。
    
  • 相关阅读:
    traceroute命令
    Apache部署django项目
    Linux中变量#,#,@,0,0,1,2,2,*,$$,$?的含义
    Python正则表达式
    Python 字符串格式化 (%操作符)
    Python初学者的一些编程技巧
    Linux命令 ls -l 输出内容含义详解
    Django 前后台的数据传递示列
    hibernate基础(一)
    MySQL之多表
  • 原文地址:https://www.cnblogs.com/james-roger/p/5805688.html
Copyright © 2011-2022 走看看