如何在spring中配置定时任务

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在spring中配置定时任务相关的知识,希望对你有一定的参考价值。

参考技术A 一、在web.xml文件中进行如下配置:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/classes/applicationContext-*.xml
</param-value>
</context-param>
那么需要在工程下创建一个以applicationContext- 为开头的xml文件eg:applicationContext-jobconfig.xml
xml的头和结尾部分跟其他spring配置文件相似,就不赘述,正文如下:
<bean id="youJobName(类别名)" class="com.******.YourJobClassLocation(类的定位)" />
<bean id="doYourJob(别名)" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject">
<ref bean="youJobName(类别名)""/>
</property>
<property name="targetMethod">
<value>runMethodName(定时执行的方法名)</value>
</property>
</bean>

<bean id="youJobNameTrigger(触发器别名)" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail">
<ref bean="doYourJob(别名)""/>
</property>
<property name="cronExpression">
<value>0 0/20 * * * ?(定时的时间配置)</value>
</property>
</bean>
<bean id="doScheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<ref local="youJobNameTrigger(触发器别名)"/>
</list>
</property>
</bean>
这样的配置几本就可以运转了,但是有一个地方可能是你需要根据你的需求来确定的,那就是触发时间。
下面有一些关于时间配置的说明:
<value>0 0/20 * * * ?</value>
按顺序 <value> 秒 分 小时 日期 月份 星期 年 </value>
字段顺序

允许值

允许的特殊字符

秒 0-59 , - * /
分 0-59 , - * /
小时 0-23 , - * /
日期 1-31 , - * ? / L W C
月份 1-12 或者 JAN-DEC , - * /
星期 1-7 或者 SUN-SAT , - * ? / L C #
年(可选) 留空, 1970-2099 , - * /本回答被提问者和网友采纳

以上是关于如何在spring中配置定时任务的主要内容,如果未能解决你的问题,请参考以下文章

如何在spring中配置定时任务

如何在spring中配置定时任务

如何在spring中配置定时任务

Spring使用@Scheduled注解配置定时任务

spring配置定时任务设置为每天凌晨2点执行和每小时执行一次如何配置。

spring实现动态定时任务