`
Johnny_GZ
  • 浏览: 176115 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

java 操作quartz.Scheduler

阅读更多
以前在web项目中使用过spring+quartz进行定时操作,本次没有使用spring,直接java代码使用quartz进行定时任务的操作,做了一点总结进行分享:
try {
   Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
   if (scheduler != null && scheduler.isInStandbyMode()) {
      scheduler.start();
   }
   JobDetail jobDetail = new JobDetail(jobName, groupName, jobClass);
   jobDetail.getJobDataMap().put("name","value");

//简单的定时任务
   SimpleTrigger trigger = new SimpleTrigger(jobName, groupName,
startTime, endTime, repeatCount, repeatInterval);
   scheduler.scheduleJob(jobDetail, trigger);

//复杂些的定时任务,可以在网上找到表达式
   CronTrigger cronTrigger=new  CronTrigger("c","d");
   cronTrigger.setCronExpression("0/1 * * * * ? " ); // 启动之后立即执行 每一秒继续重复。
   scheduler.scheduleJob(jobDetail, cronTrigger);

   //结束
    if (jobScheduler != null) {
       jobScheduler.stopScheduler();
       jobScheduler = null;
    }
} catch (Exception e) {
   e.printStackTrace();
}

Job是无状态的。这意味着在两次作业执行之间,不会去维护作业执行时JobDataMap的状态改变。如果你需要能增、删,改JobDataMap的值,而且能让作业在下次执行时能看到这个状态改变,则需要用Quartz有状态作业,这时去实现StatefulJob。

public class SendSmsJob implements StatefulJob/Job {
   public void execute(JobExecutionContext jobContext) throws JobExecutionException {
      JobDataMap map = jobContext.getJobDetail().getJobDataMap().getString("name");
      ....
   }
}
分享到:
评论

相关推荐

    SpringBoot-Quartz.rar

    org.quartz.scheduler.instanceName = DefaultQuartzScheduler #集群模式 #org.quartz.scheduler.instanceId = AUTO org.quartz.scheduler.rmi.export = false org.quartz.scheduler.rmi.proxy = false org.quartz....

    quartz-scheduler分享.docx

    里面有个简单的quartz-scheduler java示例。

    quartz内部表.sql

    quartz内部表.sql。

    quartz-2.1.1 完整源码

    NOTE: If "org.quartz.scheduler.batchTriggerAcquisitionMaxCount" is set to > 1, and JDBC JobStore is used, then "org.quartz.jobStore.acquireTriggersWithinLock" must be set to "true" to avoid data ...

    Quartz Scheduler Framework 2.0.chm

    Quartz is a full-featured, open source job scheduling service that can be integrated with, or ... The Quartz Scheduler includes many enterprise-class features, such as JTA transactions and clustering.

    quartz-2.3.2-API文档-中文版.zip

    标签:quartz、scheduler、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心...

    quartz-redis-jobstore:使用Redis的Quartz Scheduler JobStore

    石英-redis-jobstore 使用 JobStore。 该项目的灵感来自 ,并提供了相似的功能,但有一些主要区别: Redis数据库和密钥前缀是...配置在quartz.properties文件中可以设置以下属性: # set the scheduler's JobStore cla

    quartz-2.3.0-API文档-中文版.zip

    标签:scheduler、quartz、jar包、java、中文文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心...

    最新 Spring 4.2.2 集成 Quartz Scheduler 2.2.2 任务调度示例

    本资源是一个最新 Spring 4.2.2 集成 Quartz Scheduler 2.2.2 的一个简单的 demo,也是博客《最新 Spring 4.2.2 集成 Quartz Scheduler 2.2.2 任务调度示例》的配套示例项目,该博客地址是:...

    akka-quartz-scheduler:Quartz扩展和实用程序,用于Akka中的cron式调度

    请注意,由于以下原因,它被命名为akka-quartz-scheduler并被定位为目标:它不是Quartz的完整端口。 相反,我们利用Quartz的调度系统的概念为Akka提供了比现有的调度组件更健壮和可靠的调度组件。 这里的目标是为...

    Quartz调度、终止执行的任务

    使用Quartz调度任务,根据需要人为的终止某个任务,适用于很多常见的场景

    quartz-2.3.0-API文档-中英对照版.zip

    标签:scheduler、quartz、jar包、java、API文档、中英对照版; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译...

    Java任务调度框架Quartz1.8.6教程实例源代码

    Java任务调度框架Quartz1.8.6(版本:1.8.6)教程实例源代码

    quartznet:Quartz Enterprise Scheduler .NET

    Quartz.NET-.NET平台的作业计划程序介绍这是Quartz.NET的README文件,Java Quartz的.NET端口。 它支持.NET Core / netstandard 2.0和.NET Framework 4.6.1及更高版本。 Quartz.NET是一个开源项目,旨在创建具有企业...

    quartz-2.3.2-API文档-中英对照版.zip

    标签:scheduler、quartz、jar包、java、中英对照文档; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请...

    spring-boot-quartz-scheduler-email-scheduling:Spring Boot Quartz调度程序示例,用于调度稍后发送的电子邮件

    Spring Boot Quartz Scheduler示例:构建电子邮件调度应用 完整的教程: : 要求 Java-1.8.x Maven-3.xx MySQL-5.xx 设定步骤 1.克隆应用程序 git clone ...

    quartz-1.4.5.zip

    Quartz is a richly featured, open source job scheduling library that can be ... The Quartz Scheduler includes many enterprise-class features, such as support for JTA transactions and clustering.

    java的Time、Scheduler定时器

    Time定时器、Scheduler定时器:依赖的类包:quartz-1.5.2.jar,quartz-all-1.5.2.jar,quartz-jboss-1.5.2.jar

    基于spring boot任务管理系统源代码.zip

    运行Application main方法启动项目,项目启动会自动创建一个测试任务 见:com.itstyle.quartz.config.TaskRunner.java。 项目访问地址:http://localhost:8080/quartz API核心接口有: Scheduler – 与scheduler...

    Quartz中文帮助文档.chm

    有了它,quartz不再抽象。 资源来自于互联网,Chuck Cavaness 著 Unmi(隔叶黄莺) 译 。 主要内容: 1.quartz起步和简单示例 2.Job部署、存储和持久化 3.Cron触发器及相关内容 4.实现Quartz监听、使用插件和远程方式 ...

Global site tag (gtag.js) - Google Analytics