jfinal4.1 集成Quartz

第一步,下载Quartz。(http://www.quartz-scheduler.org/)quartz-2.3.0是最新的文档版本。第二步,解压文件,找到对应项目数据库的SQL脚本。SQL脚本位于 /src/org/quartz/impl/jdbcjobstore文件夹下,找到对应的脚本在数据库里面跑一下,会创建以quartz为开头的共7个数据库表。第三步,jfinal项目导入q...
摘要由CSDN通过智能技术生成

第一步,下载Quartz。(http://www.quartz-scheduler.org/
在这里插入图片描述
quartz-2.3.0是最新的文档版本。
在这里插入图片描述
第二步,解压文件,找到对应项目数据库的SQL脚本。SQL脚本位于 /src/org/quartz/impl/jdbcjobstore文件夹下,找到对应的脚本在数据库里面跑一下,会创建以quartz为开头的共7个数据库表。
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
第三步,jfinal项目导入quartz.2.2.3的jar包。由于项目是maven项目,直接在pom.xml配置下依赖即可。

<!-- https://mvnrepository.com/artifact/org.quartz-scheduler/quartz -->
	<dependency>
	    <groupId>org.quartz-scheduler</groupId>
	    <artifactId>quartz</artifactId>
	    <version>2.2.3</version>
	</dependency>

第四步,封装Quartz常用API。

/**
 * 定时任务管理器
 *  可用于动态添加/移除/停止定时任务,方便调控
 * @author rocky
 * @date 2019/9/9 12:50
 */
public class QuartzManager {

    private static final Logger log = LoggerFactory.getLogger(QuartzManager.class);

    /** 调度器 */
    private static Scheduler scheduler;

    /**
     * 初始化
     */
    private static void init() throws SchedulerException {
        log.info("QuartzManager init");
        try {
            scheduler = StdSchedulerFactory.getDefaultScheduler();
        } catch (SchedulerException ex) {
            log.error("QuartzManager init failed", ex);
            throw ex;
        }
    }

    /**
     * 启动
     */
    public static void start() throws SchedulerException {
        log.info("QuartzManager start");
        if (scheduler == null) {
            init();
        }
        try {
            if (!scheduler.isStarted()) {
                scheduler.start();
            }
        } catch (SchedulerException ex) {
            log.error("QuartzManager start failed", ex);
            throw ex;
        }
    }

    /**
     * 停止
     */
    public static void stop() throws SchedulerException {
        log.info("QuartzManager stop");
        if (scheduler == null) {
            throw new NullPointerException("You can't stop this scheduler because this scheduler is null");
        }
        try {
            if (!scheduler.isShutdown()) {
                scheduler.shutdown();
            }
        } catch (SchedulerException ex) {
            log.error("QuartzManager stop failed", ex);
            throw ex;
        }
    }

    /**
     * 动态添加带参数定时任务
     * @param jobName 任务名
     * @param
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值