文档章节

Quartz组件使用一

scooplol
 scooplol
发布于 2017/08/12 10:44
字数 290
阅读 34
收藏 0
点赞 0
评论 0

第一步:定义执行类

package group.esperanto.util;

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

import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.springframework.scheduling.quartz.QuartzJobBean;

public class MyTask1 extends QuartzJobBean {
    @Override
    protected void executeInternal(JobExecutionContext context) throws JobExecutionException {
        System.out.println("当前日期:  " + new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
    }

}

第二步:在Spring中配置执行类信息

<!-- 此处表示要执行任务控制类在Spring中配置 并且告诉容器,由谁来执行 -->
        <bean id="quartzFactory1" class="org.springframework.scheduling.quartz.JobDetailFactoryBean">
             <!-- 当前可执行任务的类,这个类是QuartzJobBean的子类 -->
           <property name="jobClass" value="group.esperant.util.MyTask1" />
             <!-- 配置任务执行时配置的若干信息 -->
             <property name="jobDataMap">
                <map>
                    <!-- 立即执行,不延迟 -->
                   <entry key="timeout" value="0"/>
                </map>
             </property>
        </bean>

第三步:定义间隔触发或定时触发

<!-- 描述间隔触发控制 -->
<bean id="simpleTrigger" class="org.springframework.scheduling.quartz.SimpleTriggerFactoryBean">
   <!-- 定义间隔触发程序类 -->
  <property name="jobDetail" ref="quartzFactory1"/>
    <!-- 触发延迟 -->
  <property name="startDelay" value="0"/>
    <!-- 间隔时间 -->
  <property name="repeatInterval" value="2000"/>
</bean>

<!-- 定义定时触发 -->
<bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
   <!-- 定义定时触发类 -->
   <property name="jobDetail" ref="quartzFactory1"/>
   <!-- 定义CRON表达式 , 每秒触发 -->
   <property name="cronExpression" value="* * * * * ?"/>
</bean>

      

第四步: 定义配置调度工厂类

<!-- 定义调度工厂类配置 -->
<bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
    <property name="triggers">
       <list>
        <!-- <ref bean="simpleTrigger"/> --> 
        <ref bean="cronTrigger"/>
       </list>
    </property>
</bean>

 

© 著作权归作者所有

共有 人打赏支持
scooplol
粉丝 13
博文 68
码字总数 164262
作品 0
南充
程序员
Quartz2 定时器 《一》(概述)

Quartz2 说白了,就是个功能比较完善的定时器,可以通过指定的时间执行指定的任务。 应用范围 a.比如让商城的活动(对象)在指定的时间(定时)从发布变为激活 b.比如平台每天2:00去给用户发...

流年绘 ⋅ 2015/12/25 ⋅ 0

jfinal中对分布式事务的支持

@JFinal 你好,想跟你请教个问题:在实际项目过程中,用到了quartz组件。为了保证quartz组件中任务额事务与service层事务在同一事务控制中,使用配置文件将quartz组件的事务控制交由应用服务...

qiran ⋅ 2015/06/24 ⋅ 1

Spring整合Quartz(JobDetailBean方式)

一、Spring创建JobDetail的两种方式 定时任务两种方式,Spring很好的封装使用Quartz的细节,第一种方式是利用SPring封装的Quartz类进行特定方法的实现,第二种是通过透明的使用Quartz达到定时...

Java编程思想 ⋅ 2014/01/16 ⋅ 1

基础才是重中之重~关于ThreadStatic和Quartz的一点渊源

ThreadStatic ThreadStatic是C#里的一个特性,它可以让你的字段在一个线程里有效,但你不能控制这个字段在何时被回收,即如果声明一个int32的字段为ThreadStatic,然后你为它赋值时为100,那么...

mcy247 ⋅ 2017/12/05 ⋅ 0

初识Quartz (一)

首先大概的了解一下Quartz。 一:首先进入官网去看看什么是quartz。http://www.quartz-scheduler.org/ Quartz是一个功能丰富的开源作业调度库,可以集成到几乎任何Java应用程序中 - 从最小的...

陈嘻嘻哈哈 ⋅ 2017/08/18 ⋅ 0

Quartz 任务调度(一)

百度百科对Quartz的解释: Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个...

Andy市民 ⋅ 2015/11/02 ⋅ 0

iPhone之Quartz 2D系列--图形上下文(2)Graphics Contexts

以下几遍关于Quartz 2D博文都是转载自:http://www.cocoachina.com/bbs/u.php?action=topic&uid=38018 有关本章博客的代码实现,大家可以参考我的这遍博客:IOS用CGContextRef画各种图形(文字...

长平狐 ⋅ 2013/12/25 ⋅ 0

我心中的核心组件(可插拔的AOP)~调度组件quartz.net续~任务管理器的开发

对于任务调度来说,越来越多的团队选择了quartz,它在java和.net环境下表现都十分优秀,配置简单,功能强大,时间表达式配置灵活,但在使用时,还是感觉缺点什么,怎么说,你在服务器上安装了...

mcy247 ⋅ 2017/12/05 ⋅ 0

(翻译)Quartz官方教程——第十课:配置,资源使用和SchedulerFactory

Quartz的架构是模块化的,因此为了让它运行几个组件需要“拼凑”在一起。幸运的是,有一些类可以帮助你做到这一点。 在Quartz开始工作之前需要配置的主要组件有: ThreadPool JobStore Data...

Iceberg_XTY ⋅ 04/20 ⋅ 0

我心中的核心组件(可插拔的AOP)~大话开篇及目录

核心组件 我心中的核心组件,核心组件就是我认为在项目中比较常用的功能,如日志,异常处理,消息,邮件,队列服务,调度,缓存,持久化,分布式文件存储,NoSQL存储,IoC容器,方法拦截等等...

mcy247 ⋅ 2017/12/05 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

从 Confluence 5.3 及其早期版本中恢复空间

如果你需要从 Confluence 5.3 及其早期版本中的导出文件恢复到晚于 Confluence 5.3 的 Confluence 中的话。你可以使用临时的 Confluence 空间安装,然后将这个 Confluence 安装实例升级到你现...

honeymose ⋅ 今天 ⋅ 0

用ZBLOG2.3博客写读书笔记网站能创造今日头条的辉煌吗?

最近两年,著名的自媒体网站今日头条可以说是火得一塌糊涂,虽然从目前来看也遇到了一点瓶颈,毕竟发展到了一定的规模,继续增长就更加难了,但如今的今日头条规模和流量已经非常大了。 我们...

原创小博客 ⋅ 今天 ⋅ 0

MyBatis四大核心概念

本文讲解 MyBatis 四大核心概念(SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession、Mapper)。 MyBatis 作为互联网数据库映射工具界的“上古神器”,训有四大“神兽”,谓之:Sql...

waylau ⋅ 今天 ⋅ 0

以太坊java开发包web3j简介

web3j(org.web3j)是Java版本的以太坊JSON RPC接口协议封装实现,如果需要将你的Java应用或安卓应用接入以太坊,或者希望用java开发一个钱包应用,那么用web3j就对了。 web3j的功能相当完整...

汇智网教程 ⋅ 今天 ⋅ 0

2个线程交替打印100以内的数字

重点提示: 线程的本质上只是一个壳子,真正的逻辑其实在“竞态条件”中。 举个例子,比如本题中的打印,那么在竞态条件中,我只需要一个方法即可; 假如我的需求是2个线程,一个+1,一个-1,...

Germmy ⋅ 今天 ⋅ 0

Springboot2 之 Spring Data Redis 实现消息队列——发布/订阅模式

一般来说,消息队列有两种场景,一种是发布者订阅者模式,一种是生产者消费者模式,这里利用redis消息“发布/订阅”来简单实现订阅者模式。 实现之前先过过 redis 发布订阅的一些基础概念和操...

Simonton ⋅ 今天 ⋅ 0

error:Could not find gradle

一.更新Android Studio后打开Project,报如下错误: Error: Could not find com.android.tools.build:gradle:2.2.1. Searched in the following locations: file:/D:/software/android/andro......

Yao--靠自己 ⋅ 昨天 ⋅ 0

Spring boot 项目打包及引入本地jar包

Spring Boot 项目打包以及引入本地Jar包 [TOC] 上篇文章提到 Maven 项目添加本地jar包的三种方式 ,本篇文章记录下在实际项目中的应用。 spring boot 打包方式 我们知道,传统应用可以将程序...

Os_yxguang ⋅ 昨天 ⋅ 0

常见数据结构(二)-树(二叉树,红黑树,B树)

本文介绍数据结构中几种常见的树:二分查找树,2-3树,红黑树,B树 写在前面 本文所有图片均截图自coursera上普林斯顿的课程《Algorithms, Part I》中的Slides 相关命题的证明可参考《算法(第...

浮躁的码农 ⋅ 昨天 ⋅ 0

android -------- 混淆打包报错 (warning - InnerClass ...)

最近做Android混淆打包遇到一些问题,Android Sdutio 3.1 版本打包的 错误如下: Android studio warning - InnerClass annotations are missing corresponding EnclosingMember annotation......

切切歆语 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部