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

  • 相关阅读:
    1 win10双系统安装ubuntu16.04和18.04(问题详细记录)
    一些操作记录备查
    SecureCRT中文乱码解决方法
    Oracle中的NVL函数
    本机不安装Oracle客户端,使用PL/SQL Developer连接远程数据库
    DevExpress DateEdit控件选择精确到秒
    DevExpress GridView 整理
    Linux 删除文件夹和文件的命令
    DevExpress之XtraReport 学习
    解决Visual Studio Community 2017工具栏中没有Report Viewer的问题
  • 原文地址:https://www.cnblogs.com/verylove/p/9367120.html
Copyright © 2011-2022 走看看