而在Spring里很好的集成了Quartz,在xml文件里面配一下时间就可以自动执行,不需要写一行代码。
<bean id="methodInvokingJobDetail" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<property name="targetObject"><ref bean="financeDAO"/></property>
<property name="targetMethod"><value>confirmOrder</value></property>
</bean> <bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail">
<ref bean="methodInvokingJobDetail"/>
</property>
<property name="cronExpression">
<value>0 0 6,12,20 * * ?</value>
</property>
</bean> <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list><ref local="cronTrigger"/></list>
</property>
</bean>
其中时间的定义按以下例子模仿
表达式
意义
"0/10 * * * * ?" 每十秒触发
"0 0/1 * * * ?" 每一分钟触发
"0 0 12 * * ?" 每天中午12点触发
"0 15 10 ? * *" 每天上午10:15触发
"0 15 10 * * ?" 每天上午10:15触发
"0 15 10 * * ? *" 每天上午10:15触发
"0 15 10 * * ? 2005" 2005年的每天上午10:15触发
"0 * 14 * * ?" 在每天下午2点到下午2:59期间的每1分钟触发
"0 0/5 14 * * ?" 在每天下午2点到下午2:55期间的每5分钟触发
"0 0/5 14,18 * * ?" 在每天下午2点到2:55期间和下午6点到6:55期间的每5分钟触发
"0 0-5 14 * * ?" 在每天下午2点到下午2:05期间的每1分钟触发
"0 10,44 14 ? 3 WED" 每年三月的星期三的下午2:10和2:44触发
"0 15 10 ? * MON-FRI" 周一至周五的上午10:15触发
"0 15 10 15 * ?" 每月15日上午10:15触发
"0 15 10 L * ?" 每月最后一日的上午10:15触发
"0 15 10 ? * 6L" 每月的最后一个星期五上午10:15触发
"0 15 10 ? * 6L 2002-2005" 2002年至2005年的每月的最后一个星期五上午10:15触发
"0 15 10 ? * 6#3" 每月的第三个星期五上午10:15触发
如果出现了“Table 'database.qrtz_locks' doesn't exist”异常
有两种处理方法
方法1:
则处理方法为在声明中的
default-autowire=byName
改为
default-autowire="byName"
方法2:
配置文件在<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean" >
多个autowire=no 属性,如下
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean" autowire="no" >
分享到:
相关推荐
spring时间触发器jar包
在本示例中,“Quartz+Spring定时触发器例子”是一个完整的项目,包含了所有必要的jar包,这意味着你可以直接运行它来学习和理解Quartz与Spring的集成。这个项目应该包含以下组件: 1. **配置文件**:可能包含一个...
以下是对如何在 Spring 中添加触发器并结合 Quartz 实现定时功能的详细解释: 1. **Quartz 概述** - Quartz 是 Java 平台上用于创建、调度和执行计划任务的开源库。它提供了丰富的 API 和调度功能,支持简单任务到...
简单触发器允许设置间隔时间执行,而cron触发器则可以按照预定义的cron表达式进行复杂的定时安排。 2. **配置文件说明** 在Spring配置文件中,我们需要定义`JobDetail`和`Trigger`。`JobDetail`定义了具体的任务,...
这篇笔记将深入探讨如何使用Spring与Quartz结合来实现触发器的示例。 首先,Quartz是一个开源的作业调度框架,它允许开发者定义任务并在预定的时间点执行。Spring则是一个强大的应用框架,提供了依赖注入(DI)和...
在Java中,我们可以使用多种库来创建时间触发器,比如Quartz、Spring Task、ScheduledExecutorService等。下面将详细介绍这些库的配置方法以及如何使用它们。 1. **Quartz** Quartz是一个开源的作业调度框架,提供...
时间触发器的核心概念是调度器,Java世界中有多种库可以实现这一功能,如Quartz、Spring的`@Scheduled`注解和`java.util.Timer`类。下面将分别介绍这些实现方式: 1. **Quartz**:Quartz是一个开源的工作调度框架,...
### Spring 定时任务触发器配置详解 #### 一、Spring 定时任务概述 Spring 框架作为 Java 领域内领先的轻量级应用程序框架,提供了强大的功能支持来帮助开发者构建健壮的企业级应用。其中,定时任务功能在诸如数据...
在Spring框架中,定时任务的处理是一个重要的功能,它允许开发者在特定的时间间隔执行某些任务,这正是“Spring2.0 2.5定时触发器”所涉及的核心内容。在Spring 2.0和2.5版本中,定时任务的实现主要依赖于`org....
Spring定时器和触发器是Java应用中用于执行定时任务的关键组件。它们允许开发者安排任务在特定时间或周期性地执行,极大地增强了应用的自动化能力。在这个小实例中,我们将探讨如何使用Spring框架的`TaskScheduler`...
Spring Quartz 动态配置时间 Spring Quartz 是一个功能强大的任务调度框架,广泛应用于 Java 企业级应用程序中。其中一个重要的功能便是动态配置时间,触发相应的任务。在本文中,我们将讨论如何使用 Spring Quartz...
### 一、Spring时间调度简介 Spring框架内置了多种任务调度的支持方式,其中最常用的是基于`org.springframework.scheduling`包下的任务调度组件。这些组件使得开发者能够轻松地在Spring应用中实现定时任务的功能。...
【Spring MVC + Quartz 动态设置时间】 在Java Web开发中,Spring MVC和Quartz库经常被用来构建灵活的任务调度系统。Quartz是一个强大的、开放源码的作业调度框架,可以用于创建、调度和执行重复任务。而Spring MVC...
**Spring Quartz时间调用框架详解** Spring Quartz是一个在Spring框架中集成的时间调度插件,它允许开发者方便地创建和管理定时任务。Quartz是Java领域的一款功能强大的作业调度库,而Spring通过其优秀的IoC...
本教程将详细介绍如何在 Spring 中利用 Quartz 实现多任务调度,并能随意指定任务的执行时间。 首先,我们需要在项目中引入 Quartz 和 Spring 相关的依赖。如果你使用的是 Maven,可以在 `pom.xml` 文件中添加以下...
Java Job和触发器是Java应用程序中用于定时任务处理的关键组件,尤其在企业级应用和大数据处理中非常常见。本文将深入探讨Java中的Job和触发器,以及如何通过示例进行应用。 首先,让我们理解什么是Java Job。在...
它提供了灵活的时间表定义和多种触发器类型,如简单触发器、cron触发器等。Quartz与Spring的集成使得在Spring应用中管理任务变得更加容易,可以利用Spring的依赖注入和生命周期管理。 Spring Batch是一个用于处理...
`fixedRate`参数定义了两次执行之间的间隔时间。 如果需要更复杂的调度规则,如cron表达式,可以使用`cron`属性: ```java @Scheduled(cron = "0 0/5 * * * ?") public void executeTask() { // 执行任务代码 } `...
1. **Spring与Quartz的集成**:Spring提供了与Quartz的无缝集成,通过`Spring-Job`和`Spring-Trigger`接口,我们可以将Quartz的作业和触发器与Spring的Bean管理相结合。这样,我们可以在Spring的配置文件中声明作业...
5. **CRON Trigger**:在描述中提到的定时任务触发器,可能是指使用了CRON表达式来定义触发规则。CRON表达式是一种字符串格式,用于定义时间表,比如每天的几点几分执行任务。 6. **读取readme.htm**:在压缩包中,...