1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/myaniu-jfinal-scheduler

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

jfinal-scheduler插件

基于cron4j以及ScheduledThreadPoolExecutor实现的简单任务调度插件

插件启用方式(采用builder模式构建):

        SchedulerPlugin schedulerPlugin = SchedulerPlugin.builder()
                                                         .scheduledThreadPoolSize(10)
                                                         .enableAnnotationScan("com.test,com.abc")
                                                         .enableConfigFile("job.properties")
                                                         .build();
        me.add(schedulerPlugin);

使用方法: 在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);

在代码中通过注解配置

    @Cron("0 3 * * *")
    public class XmDataSyncJob implements Runnable {
        private static final Log LOG = Log.getLog(XmDataSyncJob.class);
    ……
    @FixedDelay(period = 60,initialDelay=60)
    public class MailSendJob implements Runnable {
    ……
    @FixedRate(period = 120,initialDelay=90)
    public class SmsSendJob implements Runnable {
    ……

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

#不需要在部署时调整的定时任务,可使用注解自动加载
#是否启用该任务
#testJob.enable=true
#任务类名
#testJob.class=com.wellbole.web.core.job.TestJob
#任务类型以及表达式
#testJob.type=cron
#testJob.expr=16 17 * * Mon

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

#每隔10秒(任务一个接着一个)执行一次
#testJob.type=fixedDelay
#testJob.period=10
#testJob.initialDelay=32

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

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Развернуть Свернуть
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/myaniu-jfinal-scheduler.git
git@api.gitlife.ru:oschina-mirror/myaniu-jfinal-scheduler.git
oschina-mirror
myaniu-jfinal-scheduler
myaniu-jfinal-scheduler
master