网站大量收购独家精品文档,联系QQ:2885784924

spring定时任务配置解析.doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
spring定时任务配置解析

定时任务解决方案 两种方案,基本上都是一样,就是配置时间规则的时候,不一致。两种方案:CronTrigger基于日历和时间,SimpleTrigger基于时间。方案一是CronTrigger配置,方案二是SimpleTrigger配置。 Quartz?是个开源的作业调度框架,为在?Java?应用程序中进行作业调度提供了简单却强大的机制。Quartz?允许开发人员根据时间间隔(或天)来调度作业。它实现了作业和触发器的多对多关系,还能把多个作业与不同的触发器关联。整合了?Quartz?的应用程序可以重用来自不同事件的作业,还可以为一个事件组合多个作业。 SimpleTrigger??当需要在规定的时间执行一次或在规定的时间段以一定的时间间隔重复触发执行Job时,SimpleTrigger就可以满足要求;SimpleTrigger的属性有:开始时间、结束时间、重复次数和重复的时间间隔,重复次数属性的值可以为0、正整数、或常量?SimpleTrigger.REPEAT_INDEFINITELY,重复的时间间隔属性值必须为0或长整型的正整数,以毫秒作为时间单位,当重复的时?间间隔为0时,意味着与Trigger同时触发执行(或几乎与Scheduler开始时同时触发执行)。如果有指定结束时间属性值,则结束时间属性优先于重复次数属性,这样的好处在于:当我们需要创建一个每间隔10秒钟触发一次直到指定的结束时间的?Trigger,而无需去计算从开始到结束的所重复的次数,我们只需简单的指定结束时间和使用REPEAT_INDEFINITELY作为重复次数的属性?值即可(我们也可以指定一个比在指定结束时间到达时实际执行次数大的重复次数)。 方案一 先写一个业务类,然后进行如下配置,一步都不能少,这样就能完成一个定时任务。 第一步 写一个业务类 package com.tcl.miss.sec.push.service.impl; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import .URI; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.ResourceBundle; import javax.annotation.Resource; import org.apache.log4j.Logger; import org.springframework.http.HttpMethod; import org.springframework.http.client.ClientHttpRequest; import org.springframework.http.client.ClientHttpResponse; import org.springframework.http.client.SimpleClientHttpRequestFactory; import org.springframework.stereotype.Service; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.tcl.miss.sec.base.service.base.impl.BaseServiceImpl; import com.tcl.miss.sec.push.service.IPushQueryService; import com.tcl.miss.sec.push.service.IPushService; @Service public class PushService extends BaseServiceImpl implements IPushService { private static final Logger log = Logger.getLogger(PushService.class); String requestUrl = ResourceBundle.getBundle(config).getString(push_path); private static boolean isRunning = false; @Resource priva

文档评论(0)

little28 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档