您的位置:首页 > 编程语言 > Java开发

Spring3.1.1 quartz1.8.6 定时器配置

2014-04-13 18:29 302 查看
原文地址:http://blog.csdn.net/itpinpai/article/details/8559599

[html] view plaincopy<!--要调用的工作 -->  
    <bean id="timeAction" class="timer.TimerAction"></bean>  
    <!--定义调用对象和调用对象的方法-->  
    <bean id="jobtask" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">  
        <!--调用的类-->  
        <property name="targetObject">  
            <ref bean="timeAction"/>  
        </property>  
        <!--调用类中的方法-->  
        <property name="targetMethod">  
                <value>start</value>  
        </property>  
    </bean>  
    <!--定义触发时间-->  
    <bean id="doTime" class="org.springframework.scheduling.quartz.CronTriggerBean">  
        <property name="jobDetail">  
            <ref bean="jobtask"/>  
        </property>  
        <!--cron表达式-->  
        <property name="cronExpression">  
            <!-- <value>0 0 8 * * ?</value> -->  
            <value>1/1 * * * * ?</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>  

 [java] view plaincopypublic class TimerAction extends QuartzJobBean  
{  
    private int timeout;  
  
    public void setTimeout(int timeout)  
    {  
        this.timeout = timeout;  
    }  
  
    @Override  
    public void executeInternal(JobExecutionContext ctx) throws JobExecutionException  
    {  
  
    }  
      
    public void start()  
    {  
        System.out.println("定时器开始了");  
    }  
  
}  

需要Jar包 quartz-1.8.6.jarslf4j-api-1.5.8.jarslf4j-log4j12-1.5.0.jar 每隔15分钟执行一次:0 0/15 * * * ? 汇总说明:Cron表达式的时间字段除允许设置数值外,还可使用一些特殊的字符,提供列表、范围、通配符等功能,细说如下:●星号(*):可用在所有字段中,表示对应时间域的每一个时刻,例如,*在分钟字段时,表示“每分钟”;●问号(?):该字符只在日期和星期字段中使用,它通常指定为“无意义的值”,相当于点位符;●减号(-):表达一个范围,如在小时字段中使用“10-12”,则表示从10到12点,即10,11,12;●逗号(,):表达一个列表值,如在星期字段中使用“MON,WED,FRI”,则表示星期一,星期三和星期五;●斜杠(/):x/y表达一个等步长序列,x为起始值,y为增量步长值。如在分钟字段中使用0/15,则表示为0,15,30和45秒,而5/15在分钟字段中表示5,20,35,50,你也可以使用*/y,它等同于0/y; 表 5.1. Quartz Cron 表达式支持到七个域
名称是否必须允许值特殊字符
0-59, - * /
0-59, - * /
0-23, - * /
1-31, - * ? / L W C
1-12 或 JAN-DEC, - * /
1-7 或 SUN-SAT, - * ? / L C #
空 或 1970-2099, - * /
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: