zoukankan      html  css  js  c++  java
  • spring整合quartz框架

    spring整合quartz:

    网上也有很多教程,好多都是基于配置方式,我们使用当然怎么简单就怎么用,所以这里介绍基于注解方式整合quartz。前提:你需要有一个能运行的web项目。
    1、引依赖:

           <dependency>
                <groupId>org.quartz-scheduler</groupId>
                <artifactId>quartz</artifactId>
                <version>2.3.0</version>
            </dependency>
    

    注意:网上有的教程说还必须引入spring-context-support依赖,但是本项目没有引入这个也可以正常使用quartz,可能是最新版不需要这个依赖了。

    2、开启quartz的注解:
    一般我们都在service层使用quartz,所以在spring-service.xml中进行如下配置:

     <context:component-scan base-package="com.zhu.meilianMall.service" />
     <task:annotation-driven/>
    

    注意:第一行扫描包的配置是ssm整合本来就需要的,等下quartz的注解也只能在这个包下使用。

    3、使用quartz的注解:
    com.zhu.meilianMall.service包下创建测试类,在需要定时执行的方法上加上@Scheduled(cron = "cron表达式"),如下:

    package com.zhu.meilianMall.service;
    
    import java.util.Date;
    
    import org.springframework.scheduling.annotation.Scheduled;
    import org.springframework.stereotype.Service;
    
    /**
     * 测试quartz
     * @author zhu
     *
     */
    @Service
    public class QuartzTest {
        @Scheduled(cron = "0/2 * * * * ?")
        public void run() {
            System.out.println("############### quartz整合成功! "+new Date()+"#####################");
        }
    
    }
    
    

    注意:既然是在service层测试,测试类不要忘了加@Service注解;cron表达式不会写没关系,百度一下“cron表达式在线生成器”,就会有很多,这里也给出一个:在线cron表达式生成器。本案例中是每隔2秒执行一次run方法。

    4、测试:
    启动tomcat访问项目,然后控制台就打印出run方法的执行结果了。

     
    image.png

    run方法每隔两秒打印一次,整合成功!
  • 相关阅读:
    Python conda 入门
    EmEditor
    LInux 阿里云系统遇到挖矿程序
    Git 全局配置查看修改
    chrome下input文本框自动填充背景问题解决
    织梦调用当前位置 修改当前位置间隔符号
    dedecms调用文章内容
    dedecms文章页调用上一篇和下一篇文章
    dedecms在任意页面调用任意栏目文章
    dedecms判断当前页面是否为首页 织梦设置首页高亮
  • 原文地址:https://www.cnblogs.com/yachao1120/p/11756019.html
Copyright © 2011-2022 走看看