为什么80%的码农都做不了架构师?>>>   

项目需要用一些少量的后台调度任务,上周末再完全用jfinal重现项目的时候把quartz替换成了cron4j。虽然以前没用过cron4j但是感觉自己需要的简单功能用这个轻巧的jar包就足够了。刚开始是在一个servlet 监听器里面启动调度程序。后来想完全可以依赖于Jfinal的插件机制做一点点小扩展。献丑直接上代码。

另外cron4j替换quartz会不会出什么问题我也不清楚。求指教。

如果需要的话再弄个QuartzPlugIn

package com.jfinal.plugin.cron;import it.sauronsoftware.cron4j.Scheduler;import com.jfinal.plugin.IPlugin;public class Cron4jPlugIn implements IPlugin {private final Scheduler scheduler = new Scheduler();@Overridepublic boolean start() {scheduler.start();return true;}@Overridepublic boolean stop() {scheduler.stop();return true;}public void addTask(String cronExpress, Runnable task) {scheduler.schedule(cronExpress, task);}}
/*** 配置插件*/public void configPlugin(Plugins me) {C3p0Plugin c3p0Plugin = new C3p0Plugin(getProperty("jdbcUrl"), getProperty("user"), getProperty("password"));me.add(c3p0Plugin);ActiveRecordPlugin arp = new ActiveRecordPlugin(c3p0Plugin);me.add(arp);arp.addMapping("mobilebind", MobileBind.class);arp.addMapping("sendrecord", SendRecord.class);arp.setShowSql(true);SqlReporter.setLogger(true);Cron4jPlugIn cron4jPlugIn = new Cron4jPlugIn();if (getPropertyToBoolean("SendStudentInfo.enable") == true) {cron4jPlugIn.addTask(getProperty("SendStudentInfo.cron"), new SendStudentInfoTask());}if (getPropertyToBoolean("SmsUpReceive.enable") == true) {cron4jPlugIn.addTask(getProperty("SmsUpReceive.cron"), new SmsUpReceiveTask());}me.add(cron4jPlugIn);}

a_little_config.txt

SmsUpReceive.cron=* * * * *
SmsUpReceive.enable=true
SendStudentInfo.cron=0 * * * *
SendStudentInfo.enable=true

转载于:https://my.oschina.net/b1412/blog/67347

cron4j的Jfinal plugin相关推荐

  1. java jfinal 定时任务_JFinal 中的cron4j定时插件

    1.下载cron4j的jar包,并放入classpath 2.编写Cron4jPlugin.java package com.welicai.app.common.plugin; import it. ...

  2. java使用redis incr,JFinal Redis plugin 有关数值类型incr操作的bug

    先上测试代码:public class TestCache { private static final Cache testCache = Redis.use(CacheCons.TEST) ; p ...

  3. Jfinal Generator 不需要生成带某个前缀的表名数组的方法

    2019独角兽企业重金招聘Python工程师标准>>> package com.demo.common.model; import javax.sql.DataSource; imp ...

  4. 给JFinal添加 Sqlite 数据库支持

    2019独角兽企业重金招聘Python工程师标准>>> Sqlite 的单文件便携性.高性能在开发中方便性无与伦比,即使部署在中小型应用中也胜任有余. 在JFinal中添加对 Sql ...

  5. Jfinal 2.1 集成 Guice,实现注解功能, 加入Service接口和实现类,直接晒代码

    2019独角兽企业重金招聘Python工程师标准>>> [1].第一步,Maven引入Google的Guice的jar包: <dependency><groupId ...

  6. MySQL jfinal 生成数据_JFinal Web开发学习(四)数据库连接与自动生成model

    1.新建数据库jfinal_test,user表 /* Navicat MySQL Data Transfer Source Server : . Source Server Version :505 ...

  7. oracle故障级别划分,jfinal 2.2 oracle 事务级别问题

    com.jfinal.plugin.activerecord.ActiveRecordException: java.sql.SQLException: 仅 READ_COMMITTED 和 SERI ...

  8. jfinal整合quartz实现定时任务的两种方式

    第一种实现方式 1.导入包 <dependency>             <groupId>org.quartz-scheduler</groupId>    ...

  9. jfinal框架批量导出数据到Excel

    1.配置controller public void export(){         Map<String, String[]> searchMap = new HashMap< ...

最新文章

  1. 触摸心灵-触觉感知和发展的模型
  2. Kinect 动作识别组件概要设计
  3. 算法:排序算法的比较
  4. 分布式部署携程Apollo构建配置中心
  5. windows7计算机管理,win7系统打开计算机管理(compmgmt.msc)的操作方法
  6. springboot新版本(2.1.0)、springcloud新版本(Greenwich.M1)实现链路追踪的一些坑
  7. 排序算法--选择排序
  8. 已经编译好的OpenCV4.5.1----win10(cuda10.0 cudnn7.6.5)
  9. js实现bin2hex和hex2bin
  10. 快速学习-视频播放器解决方案
  11. OpenHarmony开源鸿蒙学习入门-应用开发之使用eTS语法示例项目讲解
  12. 【CSU-PIPIOJ】1254 PIPI上学路
  13. ocelot和nginx比较_针对 Ocelot 网关的性能测试
  14. 新手lbw + 《软件工程(C编码实践篇)》MOOC课程作业http://mooc.study.163.com/course/USTC-1000002006
  15. Gluster升级遇到的问题
  16. 小游戏如何带动直播平台发展?
  17. Excel/pandas遍历各表拼接并对具体列进行文本筛选
  18. DevExpress_Winform_使用汇总
  19. 基于Python的Covid-19全球疫情数据分析预测 文档+项目源码及数据
  20. 用ThoughtWorks.QRCode生成二维码时出现“索引超出了数组界限”的错误

热门文章

  1. XXX管理平台系统——架构
  2. Struts2和Struts1.x的全面比较一
  3. ef 数据迁移mysql_07116.3.0如何将CM的外部PostgreSQL数据库迁移至MySQL服务
  4. Redis操作ZSet类型
  5. MySQ软件的卸载-通过控制面板方式
  6. Feign-实现抽取
  7. Dubbo集成Zookeeper的实现原理
  8. 如何实现模糊查询LIKE
  9. 当开启了延迟加载的开关,对象是怎么变成代理对象的?
  10. 特性总览:核心特性、数据存储、Web技术、框架整合与测试