Spring 配置的@Scheduled(cron = "0 1/5 5-21 * *?")任务,在同一时刻重复执行,求解决方法

Spring配置的@Scheduled(cron="01/55-21**?")任务,在同一时刻重复执行。。。Spring配置扫描package@Service... Spring 配置的@Scheduled(cron = "0 1/5 5-21 * *?")任务,在同一时刻重复执行。。。Spring 配置扫描package @Service 展开
 我来答
百度网友6abe618
2014-01-26
知道答主
回答量:10
采纳率:0%
帮助的人:1.5万
展开全部
转的,我就是用这种方法解决的
这是因为我们很容易在一个基于Spring的Web工程中启动2个定时线程:
第一次:web容器启动的时候,读取applicationContext.xml(或者别的Spring核心配置文件)文件时,会加载一次。
第二次:Spring本身会加载applicationContext.xml(或者别的Spring核心配置文件)一次。
解决方案:将你的Task的相关配置独立出来并在web.xml中通过context-param加载。而不是通过spring加载。
1) 独立出Spring-Task,如新命名一个文件名叫cms_quartz.xml
2) 在web.xml中去加载该文件:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/cms-servlet.xml,classpath:cms-quartz.xml</param-value>
<context-param>
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-12-25
展开全部
股份琐琐碎碎琐琐碎碎琐琐碎碎琐琐碎碎琐琐碎碎琐琐碎碎琐琐碎碎琐琐碎碎琐琐碎碎琐琐碎碎琐琐碎碎琐琐碎碎琐琐碎碎琐琐碎碎琐琐碎碎琐琐
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hnhygkx1987
2013-12-11 · TA获得超过209个赞
知道小有建树答主
回答量:210
采纳率:0%
帮助的人:138万
展开全部
你这个的配置不就是每天从5点到21 点,从1 分钟开始每5分钟循环执行么? 有什么不对吗?
更多追问追答
追问
问题是这个任务在同一时刻执行了2遍...就是说会在6分钟的时候执行两遍...
追答
你看看你的代码是否有问题? 配置应该是这样的,有可能就是你在代码里面调用了两次!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式