按照大佬分享的定时任务调度,加入从数据库加载定时任务:JFinal使用技巧-动态管理任务调度
插件 MyCron4jPlugin,启动的时候从数据库加载任务
public class MyCron4jPlugin extends Cron4jPlugin { @Override public boolean start() { loadTasksFromDb(); Cron4jKit.start(); System.out.println("加载定时任务插件并启动...."); return true; } @Override public boolean stop() { Cron4jKit.stop(); return true; } /** * 从数据库加载任务 */ public void loadTasksFromDb() { try { List<SxSysRunnable> runnableList = SxSysRunnable.me.list(); for (SxSysRunnable t:runnableList) { Object jobObj = Class.forName(t.getStr("class_name")).newInstance(); Cron4jKit.put(t.getStr("config_name"),t.getStr("cron"),true,(Runnable) jobObj); System.out.println("加载定时器:"+t.getStr("class_name")); } } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } catch (InstantiationException e) { e.printStackTrace(); } } }
2.