java 设置定时任务的时间

来源:互联网 发布:藏缅语族 知乎 编辑:程序博客网 时间:2024/05/18 02:03

最近要设置一个每隔5分钟就启动一次程序,n久之前使用的是java的time,这次因为框架的一些原因决定使用spring quartz,

配置quartz的xml文件

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jee="http://www.springframework.org/schema/jee"    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd  http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-2.0.xsd">    <!-- 线程执行器配置,用于任务注册 -->    <bean id="executor"        class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor">        <property name="corePoolSize" value="10" />        <property name="maxPoolSize" value="100" />        <property name="queueCapacity" value="500" />    </bean>    <!-- 要调用的工作类 -->       <bean id="launchWorkflow" class="com.ibm.pims.module.purchasedoc.action.LaunchWorkflow"></bean>             <bean id="jobtask3"        class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">        <!-- 调用的类 -->        <property name="targetObject" ref="launchWorkflow" />        <!-- 调用类中的方法 -->        <property name="targetMethod" value="launchWorkflowSectionId" />    </bean>         <bean id="doTime3" class="org.springframework.scheduling.quartz.CronTriggerBean">        <property name="jobDetail" ref="jobtask3" />        <property name="cronExpression" value="0 */5 * * * ?" />    </bean>        <!--设置调度 总管理类 如果将lazy-init='false'那么容器启动就会执行调度程序 -->    <bean id="startQuertz" lazy-init="false" autowire="no"        class="org.springframework.scheduling.quartz.SchedulerFactoryBean">        <property name="triggers">            <list>               <                 <ref bean="doTime3" />            </list>        </property>                <property name="taskExecutor" ref="executor" />    </bean></beans>

配置好以后每5分钟就会运行一次
com.ibm.pims.module.purchasedoc.action.LaunchWorkflow包下的launchWorkflowSectionId方法

下面的是quartz的时间配置:
0 0 12 * * ?---------------在每天中午12:00触发 
0 15 10 ? * *---------------每天上午10:15 触发 
0 15 10 * * ?---------------每天上午10:15 触发 
0 15 10 * * ? *---------------每天上午10:15 触发 
0 15 10 * * ? 2005---------------在2005年中的每天上午10:15 触发 
0 * 14 * * ?---------------每天在下午2:00至2:59之间每分钟触发一次 
0 0/5 14 * * ?---------------每天在下午2:00至2:59之间每5分钟触发一次 
0 0/5 14,18 * * ?---------------每天在下午2:00至2:59和6:00至6:59之间的每5分钟触发一次 
0 0-5 14 * * ?---------------每天在下午2:00至2:05之间每分钟触发一次 
0 10,44 14 ? 3 WED---------------每三月份的星期三在下午2:00和2:44时触发 
0 15 10 ? * MON-FRI---------------从星期一至星期五的每天上午10:15触发 
0 15 10 15 * ?---------------在每个月的每15天的上午10:15触发 
0 15 10 L * ?---------------在每个月的最后一天的上午10:15触发 
0 15 10 ? * 6L---------------在每个月的最后一个星期五的上午10:15触发 
0 15 10 ? * 6L 2002-2005---------------在2002, 2003, 2004 and 2005年的每个月的最后一个星期五的上午10:15触发 
0 15 10 ? * 6#3---------------在每个月的第三个星期五的上午10:15触发 
0 0 12 1/5 * ?---------------从每月的第一天起每过5天的中午12:00时触发 
0 11 11 11 11 ?---------------在每个11月11日的上午11:11时触发.­

有用到的可以参考一下

0 0
原创粉丝点击