第一步:新建一個實現了Runnable接口的任務類
package cc.mxtt.common; public class MyTask implements Runnable{ @Override public void run() { System.out.println("my task!!!"); } }
第二步:在jfinal的配置文件中加入如下代碼:
/** * 配置插件 */ public void configPlugin(Plugins me) { // 配置Druid數據庫連接池插件 DruidPlugin druidPlugin = createDruidPlugin(); druidPlugin.addFilter(new StatFilter()); // 添加 StatFilter 纔會有統計數據 me.add(druidPlugin); // 配置ActiveRecord插件 ActiveRecordPlugin arp = new ActiveRecordPlugin(druidPlugin); String baseSqlTemplatePath = PathKit.getWebRootPath()+"/WEB-INF/sql"; arp.setBaseSqlTemplatePath(baseSqlTemplatePath); //arp.addSqlTemplate("system.sql"); File[] files = new File(baseSqlTemplatePath).listFiles(); for(File f : files) { if(f.isFile() && f.getName().endsWith(".sql") ){ arp.addSqlTemplate(f.getName()); } } if (p.getBoolean("devMode", false)) { arp.setShowSql(true); } me.add(arp); _MappingKit.mapping(arp); //配置任務調度插件 Cron4jPlugin cp = new Cron4jPlugin(); cp.addTask("*/1 * * * *", new MyTask()); me.add(cp); }
注:這裏是1分鐘執行一次,任務執行週期請參考Cron4j規則或者jfinal3.0手冊。