zoukankan      html  css  js  c++  java
  • cron 定时任两种配置方式

    第一种:xml文件方式

        
    <bean id="commonTimer" class="com.course.wx.timer.CommonTimer"></bean><!--定时任务Bean --> <bean name="startQuartz" lazy-init="false" autowire="no" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers"> <list> <ref bean="releaseQuestionTrigger" /> <ref bean="dealHistoryQuestionTrigger" /> </list> </property> </bean> <bean id="dealHistoryQuestionTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean"> <property name="jobDetail"> <ref bean="dealHistoryQuestion" /> </property> <property name="cronExpression"> <value>0 23 15 * * ?</value> </property> </bean> <bean id="dealHistoryQuestion" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> <property name="targetObject"> <ref bean="commonTimer" /> </property> <property name="targetMethod"> <value>dealHistoryQuestion</value> </property> </bean>

    第二种:注解方式

    xml配置

        <!-- Spring定时器注解开关-->  
        <task:annotation-driven />
        <!-- 此处对于定时时间的配置会被注解中的时间配置覆盖,因此,以注解配置为准 -->  
        <task:scheduled-tasks scheduler="myScheduler">  
            <task:scheduled ref="scheduledTaskManager" method="autoCardCalculate" cron="* */5 * * * *"/>  
        </task:scheduled-tasks>  
        <task:scheduler id="myScheduler" pool-size="10"/>

    Java代码

    
    @Component("scheduledTaskManager")
    @Lazy(value=false)
    public class ScheduledTaskManager { 
        
        public static final Integer RECOVER = 3;
        /** 
         * cron表达式:* * * * * *(共6位,使用空格隔开,具体如下) 
         * cron表达式:*(秒0-59) *(分钟0-59) *(小时0-23) *(日期1-31) *(月份1-12或是JAN-DEC) *(星期1-7或是SUN-SAT) 
         */  
        @Autowired
        ProcedureService procedureService;
      
        /** 
         * 定时卡点计算。每天凌晨 02:00 执行一次 
         * @throws AdqException 
         */  
        @Scheduled(cron = "* */5 * * * *")  
        public void autoCardCalculate() throws AdqException {  
            List<WorkOrder> suspendItems = procedureService.querySuspendItems();
            if (suspendItems != null && suspendItems.size() > 0) {
                for (WorkOrder order : suspendItems) {
                    order.setStateId(RECOVER);
                    order.setNotes("恢复执行");
                    procedureService.updateState(order);
                }
            }
        }  
    }  

    spring 定时任务 scheduled Cron表达式 

  • 相关阅读:
    Silverlight开发历程—动画(实现跑马灯效果)
    将小写金额转换成为大写
    Silverlight—C#代码实现变形特效
    Silverlight开发历程—C#代码添加动画
    Silverlight开发历程—动画(线性动画)
    仿腾讯登录验证码
    光线CMS系统,如何显示幻灯片
    Winform打开窗口时出现“确保已安装文件类型.cs的应用程序”的解决方法
    #2003 – 服务器没有响应 MySQL 无法启动
    根据对方提供的URL获取返回的数据流并保存为XML
  • 原文地址:https://www.cnblogs.com/alway-july/p/7821640.html
Copyright © 2011-2022 走看看