JFinal3.0配置Cron4j任务调度插件
第一步:新建一个实现了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手册。