zoukankan      html  css  js  c++  java
  • spring定时任务quartz

    spring定时任务quartz

    背景介绍

      使用spring做项目,需要定时的完成一系列的任务动作处理,执行相应的代码逻辑,使用spring的Quartz组件可以完成定时任务的功能,作者强烈推荐使用Quartz 2.x版本。

    原理如下:

    一、环境介绍

      IDE:eclipse

      JDK:1.8

      Maven:3.5

    二、搭建步骤

      1、使用eclipse新创建Maven项目:

      2、选择项目存放路径

      3、项目类型选择为Web类型

      4、填写项目包信息

      5、完成,编写代码

    三、核心代码说明

      1、首先编写WEB.XML文件的配置,填写对应bean文件的监听文件

      

      2、编写对应的bean信息内容,也就是applicationContext.xml文件的内容

      

      说明:

        这里只截取了Quartz 2.x版本的配置,具体版本1.x的可以参见具体代码,代码可以在文章后面找到。

        这里先添一个springframework的scheduling的定时任务触发器,默认这执行exampleJob2的触发器,然后添加exampleJob2的触发器exampleJob2trigger,具体的设定好任务名称及任务引用bean id,并配置定时器的出发周期,再次添加触发器执行的任务类,及类执行方法,这里采用属性值注入方法,最后添加执行exampleJob2的执行任务类bean的具体实现类。

      3、Pom文件如下

      

      主要是在springframework框架上增加了Quartz的Scheduler包,主类包quartz和quzrtz-jobs包。

      4、exampleJob2的实现类如下

      

      这里比较简单,不像Quartz 1.x版本样还需要继承于QuartzJobBean,重写对应的方法了。

    四、测试运行

       运行项目会看到定时任务的输出信息

    2018-07-25 17:10:40执行ExampleJob2
    2018-07-25 17:10:50执行ExampleJob2
    2018-07-25 17:11:00执行ExampleJob2
    2018-07-25 17:11:10执行ExampleJob2
    2018-07-25 17:11:20执行ExampleJob2

    五、代码地址

      https://github.com/verylove/spring-notes/tree/master/spring-quartz

  • 相关阅读:
    Redis入门--- 五大数据类型 ---String ,List
    Redis入门 --- 安装
    Netty 应用实例-群聊系统,心跳检测机制案例 ,WebSocket 编程实现服务器和客户端长连接
    红锁的实现
    基于Redis实现分布式锁
    基于分布式锁 分布式全局唯一ID
    Netty Java BIO 编程 (一)
    Netty Java NIO 基本介绍Channel 和 buffer (二)
    Java AIO 基本介绍
    SpringBoot 系列教程自动配置选择生效
  • 原文地址:https://www.cnblogs.com/verylove/p/9367120.html
Copyright © 2011-2022 走看看