码迷,mamicode.com
首页 > 其他好文 > 详细

jfinal-scheduler 极简JFinal任务插件

时间:2015-08-05 22:49:21      阅读:565      评论:0      收藏:0      [点我收藏+]

标签:

jfinal-scheduler 是 基于cron4j以及ScheduledThreadPoolExecutor实现的简单的任务调度插件。

插件git@osc地址:

https://git.oschina.net/myaniu/jfinal-scheduler

极简体现在几个方便:

1)自动根据CPU内核数设定调度线程数
2)任务只需实现Runnable接口
3)只支持cron表达式(最小单位分钟)/固定频率(时间单位固定为秒)/固定延迟(时间单位固定为秒)
4)支持通过配置文件启动任务。插件只需一行代码加载。

使用方法: 加载dist目录下的jfinal-scheduler-1.2.0.jar插件

在JFinal的Config配置文件中配置(编码加载)

@Override
    public void configPlugin(Plugins me) {
        SchedulerPlugin sp = new SchedulerPlugin();
        Runnable task = new TestTask();
        //每隔10秒执行一次
        //sp.fixedDelaySchedule(task, 10);
        //sp.fixedRateSchedule(task, 10);
        //每隔1分钟执行一次
        sp.cronSchedule(task, "* * * * *");
        me.add(sp);

在JFinal的Config配置文件中配置(通过配置文件加载)

@Override
    public void configPlugin(Plugins me) {
        SchedulerPlugin sp = new SchedulerPlugin("job.properties");
        me.add(sp);

job.properties

#是否启用该任务
testJob.enable=true
#任务类名
testJob.class=com.wellbole.web.core.TestTask
#任务类型以及表达式
#testJob.type=cron
#testJob.expr=* * * * *

#每隔10秒(每分钟6次)执行一次
testJob.type=fixedRate
testJob.expr=10

#每隔5秒(任务一个接着一个)执行一次
#testJob.type=fixedDelay
#testJob.expr=5

#job1.class=x.y.z.Runnable
#...

jfinal-scheduler 极简JFinal任务插件

标签:

原文地址:http://my.oschina.net/myaniu/blog/488386

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!