spring 中集成quartz定时器及quartz中cronExpression配置说明



spring 中集成quartz:

spring文件的配置:

<?xml version="1.0" encoding="UTF-8"?>
<beans
	xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:p="http://www.springframework.org/schema/p"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">

	<bean id="quartzTask" class="com.chen.quartz.QuartzTask">
	</bean>

	<bean id="quartzFactoryBean" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<property name="targetObject" ref="quartzTask"></property>
		<property name="targetMethod" value="executeQuartzTask"></property>
	</bean>

	<bean id="cronTriggerBean" class="org.springframework.scheduling.quartz.CronTriggerBean">
		<property name="jobDetail">
			<ref bean="quartzFactoryBean"/>
		</property>
		<!--
			一个cron表达式有至少6个(也可能7个)有空格分隔的时间元素
			按顺序依次为:秒、分、时、日、月、周、年
			注:由于"月份中的日期"和"星期中的日期"这两个元素互斥的,必须要对其中一个设置为?
		 -->
		<property name="cronExpression">
			<value>0/5 * * * * ?</value>
		</property>
	</bean>

	<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
		<property name="triggers">
			<list>
				<ref bean="cronTriggerBean"/>
			</list>
		</property>
	</bean>
</beans>

定时器执行的java类:

package com.chen.quartz;

import java.text.SimpleDateFormat;
import java.util.Date;

public class QuartzTask {

	static int count = 0;

	public void executeQuartzTask(){
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
		System.out.println(sdf.format(new Date())+":"+count++);
	}
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.out.println(count++);
		System.out.println(count++);
	}

}

quartz中cronExpression配置说明:

时间: 2024-10-11 13:02:29

spring 中集成quartz定时器及quartz中cronExpression配置说明的相关文章

实现quartz定时器及quartz定时器原理介绍

一.核心概念 Quartz的原理不是很复杂,只要搞明白几个概念,然后知道如何去启动和关闭一个调度程序即可. 1.Job表示一个工作,要执行的具体内容.此接口中只有一个方法void execute(JobExecutionContext context) 2.JobDetailJobDetail表示一个具体的可执行的调度程序,Job是这个可执行程调度程序所要执行的内容,另外JobDetail还包含了这个任务调度的方案和策略. 3.Trigger代表一个调度参数的配置,什么时候去调. 4.Sched

细说shiro之五:在spring框架中集成shiro

官网:https://shiro.apache.org/ 1. 下载在Maven项目中的依赖配置如下: <!-- shiro配置 --> <dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-core</artifactId> <version>${version.shiro}</version> </dependency&g

Spring Boot 2.X(六):Spring Boot 集成 Redis

Redis 简介 什么是 Redis Redis 是目前使用的非常广泛的免费开源内存数据库,是一个高性能的 key-value 数据库. Redis 与其他 key-value 缓存(如 Memcached )相比有以下三个特点: 1.Redis 支持数据的持久化,它可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用. 2.Redis 不仅仅支持简单的 key-value 类型的数据,同时还提供 list,set,zset,hash 等数据结构的存储. 3.Redis 支持数据的备份

Spring中Quartz定时器

Quartz是一个强大的企业级任务调度框架,Spring中继承并简化了Quartz,下面就看看在Spring中怎样配置Quartz: 首先我们来写一个被调度的类: package com.kay.quartz; public class QuartzJob { public void work()      {      System.out.println("Quartz的任务调度!!!");      } } Spring的配置文件: <?xml version="

Spring quartz定时器动态多任务实现

项目中经常会碰到需要定时执行的任务,并且需要执行什么任务,以及任务执行的时间都由用户自定义的需求.quartz是比较常用的定时器工具,并且在spring框架中也已经做了很好的集成,所以在以spring+hibernate+struts的主流架构中,我们可以采用quartz来做定时器任务的解决方案,下面,我们来看下如何在项目中使用quartz来做动态多任务定时器功能. 1.简单单任务定时器的spring配置 <!-- 配置定时任务,用于初始化定时器 -->       <bean id=&

Quartz+spring+maven集成实例(解决Job实现类注入bean为空的问题)

环境: jdk1.7.eclipse.maven.quartz2.2.1 包的架构: 流程: 1.创建项目并在pom中加入相应的jar包 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0

spring+quartz 定时器使用

项目使用:spring+springMVC+JPA+Maven 1.在pom.xml中引用quartz的jar包 <!-- quartz --> <dependency>     <groupId>org.quartz-scheduler</groupId>     <artifactId>quartz</artifactId>     <version>2.2.1</version> </depende

基于spring和Quartz定时器

最近做一个小项目,要每7天去调用webservice获取一次数据.所以就用定时器来完成spring是4.1.6,quartz是2.2.1. 首先配置spring的xml文件.首先定义你要被执行的类 <!-- 被执行类 --> <bean id="remote" class="com.real.api.utils.InfoQuartz"> </bean> 将用来调度的类注入到job中.其中targetMethod是你在被调度的方法.

spring启动quartz定时器

在很多中经常要用到定时任务,quartz是定时器中比较好用的,在Spring中使用quartz是很容易的事情,首先在spring的applicationContext.xml文件中增加如下配置: <!-- quartz定时器定义 --> <!-- 要调用的工作类,即任务处理类 --> <bean id="quartzJob" class="com.mdnet.travel.core.model.QuartzJob"></be