package com.zskk.config; import com.jfinal.config.Constants; import com.jfinal.config.Handlers; import com.jfinal.config.Interceptors; import com.jfinal.config.JFinalConfig; import com.jfinal.config.Plugins; import com.jfinal.config.Routes; import com.jfinal.core.JFinal; import com.jfinal.kit.PropKit; import com.jfinal.plugin.activerecord.ActiveRecordPlugin; import com.jfinal.plugin.activerecord.dialect.MysqlDialect; import com.jfinal.plugin.activerecord.dialect.OracleDialect; import com.jfinal.plugin.activerecord.dialect.SqlServerDialect; import com.jfinal.plugin.cron4j.Cron4jPlugin; import com.jfinal.plugin.druid.DruidPlugin; import com.jfinal.template.Engine; import com.zskk.control.ViewController; import com.zskk.service.ServiceFactory; import com.zskk.task.CheckTask; import com.zskk.task.DataTask; import com.zskk.task.InfoTask; import com.zskk.task.InsertTask; import com.zskk.task.ReviewTask; import com.zskk.task.TempTask; import com.zskk.task.UpdateTask; public class ZskkConfig extends JFinalConfig { // 本地开发模式 private boolean isLocalDev = false; /** * 如果生产环境配置文件存在,则优先加载该配置,否则加载开发环境配置文件 * * @param pro 生产环境配置文件 * @param dev 开发环境配置文件 */ public void loadProp(String pro, String dev) { try { PropKit.use(pro); } catch (Exception e) { PropKit.use(dev); isLocalDev = true; } } public void configConstant(Constants me) { loadProp("config.properties", "a_little_config.txt"); me.setDevMode(PropKit.getBoolean("devMode", false)); me.setBaseDownloadPath("/download");// 配置文件下载路径 } @Override public void configRoute(Routes me) { // TODO Auto-generated method stub me.add("/view", ViewController.class); me.add("/", ViewController.class, ""); } @Override public void configEngine(Engine me) { // TODO Auto-generated method stub } public static DruidPlugin createConnectedDruidPlugin() { return new DruidPlugin(PropKit.get("jdbcUrl_connected"), PropKit.get("user_connected"), PropKit.get("password_connected").trim()); } public static DruidPlugin createConnectedDruidPlugintemp() { return new DruidPlugin(PropKit.get("jdbcUrl_connectedtemp"), PropKit.get("user_connectedtemp"), PropKit.get("password_connectedtemp").trim()); } @Override public void configPlugin(Plugins me) { // 配置数据库连接池插件 DruidPlugin druidPluginConnected = createConnectedDruidPlugin(); me.add(druidPluginConnected); // 配置ActiveRecord插件 ActiveRecordPlugin arpConnected = new ActiveRecordPlugin("connected", druidPluginConnected); arpConnected.setDialect(new OracleDialect()); me.add(arpConnected); // 配置数据库连接池插件 DruidPlugin druidPluginConnectedtemp = createConnectedDruidPlugintemp(); me.add(druidPluginConnectedtemp); // 配置ActiveRecord插件 ActiveRecordPlugin arpConnectedtemp = new ActiveRecordPlugin("connectedtemp", druidPluginConnectedtemp); arpConnectedtemp.setDialect(new MysqlDialect()); me.add(arpConnectedtemp); //报告匹配 Cron4jPlugin cpData = new Cron4jPlugin(); cpData.addTask("*/5 * * * *", new DataTask()); me.add(cpData); //获取待下载检查列表 Cron4jPlugin inData = new Cron4jPlugin(); inData.addTask("*/3 * * * *", new InsertTask()); me.add(inData); //下载影像 Cron4jPlugin urlData = new Cron4jPlugin(); urlData.addTask("*/1 * * * *", new UpdateTask()); me.add(urlData); //影像缺失补传 Cron4jPlugin ckData = new Cron4jPlugin(); ckData.addTask("*/5 * * * *", new CheckTask()); me.add(ckData); //报告更新匹配 Cron4jPlugin reData = new Cron4jPlugin(); reData.addTask("*/7 * * * *", new ReviewTask()); me.add(reData); // 匹配患者信息 Cron4jPlugin ifData = new Cron4jPlugin(); ifData.addTask("*/2 * * * *", new InfoTask()); me.add(ifData); // // 临时补传报告 // Cron4jPlugin tData = new Cron4jPlugin(); // tData.addTask("*/30 * * * *", new TempTask()); // me.add(tData); } @Override public void configInterceptor(Interceptors me) { // TODO Auto-generated method stub } @Override public void configHandler(Handlers me) { // TODO Auto-generated method stub } @Override public void onStart() { // TODO Auto-generated method stub super.onStart(); ServiceFactory.init(); } // public static void main(String[] args) { // JFinal.start("WebRoot", 10002, "/", 5); // } }