在spring的applicationContext.xml 中配置定时器
需要的jar包:quartz.jar
1 <!--配置定时器 --> 2 <bean id="capture" class="com.gsst.bookingplatform.basic.utils.Capture"> 3 4 </bean> 5 <bean id="autoTask" class ="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> 6 <property name="targetObject"> 7 <ref bean="capture"/> 8 </property> 9 <property name="targetMethod"> 10 <value>executeInternal</value> 11 </property> 12 </bean> 13 14 <!-- 每隔一段时间定时执行 --> 15 <!-- <bean id="simpleTriggerFactoryBean" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean"> 16 <property name="jobDetail" ref="autoTask" /> 17 <property name="startDelay" value="0" />调度工厂实例化后,经过0秒开始执行调度 18 <property name="repeatInterval" value="5000" />每2秒调度一次 19 </bean> --> 20 21 <!-- 到了指定时间执行 --> 22 <bean id="cronTriggerFactoryBean" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean"> 23 <property name="jobDetail" ref="autoTask" /> 24 <property name="startDelay" value="0" /><!-- 调度工厂实例化后,经过0秒开始执行调度 --> 25 <property name="cronExpression" value="0 00 0 * * ?" /><!-- 到了晚上12点执行 --> 26 </bean> 27 28 <bean id ="triggersStarter" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> 29 <property name="triggers"> 30 <list> 31 <ref bean="cronTriggerFactoryBean"/> 32 </list> 33 </property> 34 <property name="autoStartup"> 35 <value>true</value> 36 </property> 37 </bean > 38 <!-- 结束定时器配置 -->
1 具体时间设定可参考 2 3 "0/10 * * * * ?" 每10秒触发 4 5 "0 0 12 * * ?" 每天中午12点触发 6 "0 15 10 ? * *" 每天上午10:15触发 7 "0 15 10 * * ?" 每天上午10:15触发 8 "0 15 10 * * ? *" 每天上午10:15触发 9 "0 15 10 * * ? 2005" 2005年的每天上午10:15触发 10 "0 * 14 * * ?" 在每天下午2点到下午2:59期间的每1分钟触发 11 "0 0/5 14 * * ?" 在每天下午2点到下午2:55期间的每5分钟触发 12 "0 0/5 14,18 * * ?" 在每天下午2点到2:55期间和下午6点到6:55期间的每5分钟触发 13 "0 0-5 14 * * ?" 在每天下午2点到下午2:05期间的每1分钟触发 14 "0 10,44 14 ? 3 WED" 每年三月的星期三的下午2:10和2:44触发 15 "0 15 10 ? * MON-FRI" 周一至周五的上午10:15触发 16 "0 15 10 15 * ?" 每月15日上午10:15触发 17 "0 15 10 L * ?" 每月最后一日的上午10:15触发 18 "0 15 10 ? * 6L" 每月的最后一个星期五上午10:15触发 19 "0 15 10 ? * 6L 2002-2005" 2002年至2005年的每月的最后一个星期五上午10:15触发 20 "0 15 10 ? * 6#3" 每月的第三个星期五上午10:15触发 21 每隔5秒执行一次:*/5 * * * * ? 22 每隔1分钟执行一次:0 */1 * * * ? 23 每天23点执行一次:0 0 23 * * ? 24 每天凌晨1点执行一次:0 0 1 * * ? 25 每月1号凌晨1点执行一次:0 0 1 1 * ? 26 每月最后一天23点执行一次:0 0 23 L * ? 27 每周星期天凌晨1点实行一次:0 0 1 ? * L 28 在26分、29分、33分执行一次:0 26,29,33 * * * ? 29 每天的0点、13点、18点、21点都执行一次:0 0 0,13,18,21 * * ?