// 设置任务内容
JobDataMap jobDataMap = new JobDataMap();
// 需要保存spring的bean类 才能反射出 调用方法
jobDataMap.put("targetObject",
springContext.getBean("simpleService"));
// 调用方法
jobDataMap.put("targetMethod", "testMethod2");
jobDataMap.put("shouldRecover", "true");
// 设置任务详细信息
JobDetail newJob = new JobDetail();
// 任务名称
newJob.setName("jobDetail3");
// 任务详细配置
newJob.setJobDataMap(jobDataMap);
// 分组
newJob.setGroup("DEFAUL");
// 实现类(由该类去通过反射调用提供的方法)
newJob.setJobClass(MethodInvokingJobDetailFactoryBean.MethodInvokingJob.class);
Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
SimpleDateFormat formatDate = new SimpleDateFormat("yyyy-MM-dd");
String str = "2013-10-16 00:00:00";
String str2 ="2013-10-18 00:00:00";
Date time = formatDate.parse(str);
Date time2 = formatDate.parse(str2);
//触发器名称 触发器分组 执行次数 间隔时间(毫秒级)
SimpleTrigger simpleTrigger = new SimpleTrigger();
//设置分组名称
simpleTrigger.setGroup(Scheduler.DEFAULT_GROUP);
//触发器名称
simpleTrigger.setName("cronTrigger3");
//SimpleTrigger.REPEAT_INDEFINITELY 不限次数
//simpleTrigger.setRepeatCount(SimpleTrigger.REPEAT_INDEFINITELY);
simpleTrigger.setRepeatCount(10);
//执行时间间隔(毫秒)
simpleTrigger.setRepeatInterval(10);
//设置开始时间
simpleTrigger.setStartTime(time);
//从1开始
simpleTrigger.setTimesTriggered(1);
//设置结束时间
simpleTrigger.setEndTime(time2);
scheduler.scheduleJob(newJob, simpleTrigger);
分享到:
相关推荐
总之,Quartz 1.7版本提供了一套完整的任务调度解决方案,即使在非Spring环境中,也能灵活地实现任务的动态管理,满足各种定时任务的需求。通过熟练掌握Quartz的API和设计模式,我们可以构建出高效、可扩展的定时...
本文将详细解释如何在Spring中动态设置Quartz的`cronExpression`,以实现灵活的定时任务配置。 首先,让我们了解什么是动态定时任务。动态定时任务是指任务的执行时间不是固定的,而是根据用户需求或者外部条件来...
2.通过Spring是JAR-quartz写的一个定时任务 1)普通的定时任务,定时完成指定的任务 2)通过前台动态分配定时任务 可指定多个任务,可同时执行任务,可以精确到时分秒扫描并执行任务 3)可以完成稍微复杂点的任务 ...
Spring框架以其强大的整合能力,为开发者提供了与各种任务调度库集成的方案,其中Quartz是一款广泛应用的开源任务调度库。本教程将深入探讨如何在Spring项目中集成Quartz,通过实例解析实现过程。 Quartz是Java平台...
在本文中,我们将深入探讨如何在Spring 4.2.2框架中集成Quartz 2.2.2,实现高效的任务调度。Quartz是一个开源的作业调度框架,它允许开发者安排任务以按照预设的时间间隔运行。而Spring框架是Java企业级应用开发的...
### Quartz在Spring中动态设置cronExpression的关键知识点 #### 1. cronExpression的理解与构成 - **定义**:cronExpression是一种用于定义周期性任务执行规则的字符串格式,它由六个或七个字段组成,这些字段通过...
例如,我们可以实现`TaskExecutionListenerSupport`监听任务的开始和结束,以便进行日志记录或错误处理。 总的来说,Spring与Quartz的结合为Java开发带来了强大的定时任务管理能力。通过灵活的配置和API,开发者...
- SimpleTrigger:定义开始时间、重复间隔和结束时间。 4. **Quartz 的优点**: - 灵活性:支持复杂的调度规则,如并行任务、依赖任务等。 - 可扩展性:支持数据库存储,适合大规模、分布式系统。 5. **Spring ...
Spring 框架提供了与Quartz集成的支持,可以更加方便地管理和配置Quartz任务。 ##### 注解方式 - 在需要执行的方法上添加`@Scheduled`注解来定义任务执行的时间规则。 - 在配置文件中启用定时任务功能。 ```xml ...
配置触发器时,我们可以指定任务的重复频率、开始时间和结束时间。 总的来说,这篇博客可能详细解释了如何在Spring中配置Quartz,创建自定义的Job类,以及如何设置和调整触发器。同时,它还可能探讨了如何结合其他...
- 当Job执行过程中出现异常时,Quartz会根据配置决定是否重新调度任务,或者记录错误日志。 8. **集群支持**: - Quartz支持多节点集群,保证在节点故障时任务仍能被执行。 9. **优化和最佳实践**: - 考虑到...
你可以通过设置Trigger的属性,如开始时间、结束时间、重复间隔等,来控制Job的执行。 4. `quartz-demo.sql`: 这个文件可能是用于创建Quartz相关的数据库表的SQL脚本。Quartz可以使用数据库存储Job和Trigger的状态...
下面我们将深入探讨原生Quartz任务调度的实现步骤,以及在Spring Boot中集成Quartz的详细过程。 ### 原生Quartz任务调度实现步骤 1. **引入依赖**:首先,在项目中添加Quartz库的依赖,如果是Maven项目,可以在pom...
这里`fixedDelay`参数表示前一次执行结束到下一次执行开始之间的时间间隔,单位为毫秒。 2. **启用定时任务配置** 在Spring Boot项目中,为了使`@Scheduled`生效,需要在配置类中启用定时任务支持: ```java @...
Spring整合Quartz是一个常见的任务调度解决方案,用于在Java应用程序中执行定时任务。Quartz是一个开源的作业调度框架,而Spring提供了与Quartz的无缝集成,使得开发者能够方便地在Spring应用上下文中配置和管理调度...
- 实现Job的监听器,以便在任务开始、结束时进行日志记录或其他操作。 - 使用Spring的`@Scheduled`注解进行简单的定时任务配置,避免过多的XML配置。 - 通过动态添加、修改和删除`Job`和`Trigger`,实现任务的灵活...
【描述】虽然描述为空,但我们可以推测这是一个简单的示例教程,可能是通过一个实际的项目或代码实例来展示如何在Spring 3版本中设置和运行Quartz任务。这个教程可能涵盖了从添加依赖、配置Spring XML、定义Job类...
Quartz 是一个完全由 Java 编写的开源任务调度框架,通过触发器设置作业定时运行规则,控制作业的运行时间。Quartz 框架的主要特点包括: * 强大的调度功能,例如丰富多样的调度方法,可以满足各种常规和特殊需求 *...
此外,还可以通过Spring事件监听机制,在作业开始和结束时触发自定义逻辑。 总的来说,Spring Boot与Quartz的结合为开发者提供了一种高效、便捷的方式来管理周期性的后台任务。通过合理配置和编程,我们可以构建出...