package common.config; import com.jfinal.config.*; import com.jfinal.kit.Prop; import com.jfinal.plugin.activerecord.ActiveRecordPlugin; import com.jfinal.plugin.druid.DruidPlugin; import com.jfinal.server.undertow.UndertowServer; import com.jfinal.template.Engine; import common.utils.config.MyPropKit; import modules.ethmev.EthMevController; import modules.hello.HelloController; import modules.swappath.SwapPathController; import common.memory.SwapPathMemoryDb; import common.model.EthMev; import common.model.SwapPath; public class WebConfig extends JFinalConfig { static Prop p; public static void main(String[] args) { UndertowServer.start(WebConfig.class, 8088, true); } static void loadConfig() { if (p == null) { p = MyPropKit.useFirstFound("/webapp/backend/evi.properties", "./evi-dev.properties"); } } @Override public void configConstant(Constants constants) { loadConfig(); constants.setDevMode(p.getBoolean("devMode", false)); // 开启对 JFinal web 项目组件 Controller、Interceptor、Validator 的注入 constants.setInjectDependency(true); } @Override public void configRoute(Routes routes) { routes.add("/", HelloController.class); routes.add("/hello", HelloController.class); routes.add("/ethmev", EthMevController.class); routes.add("/swappath", SwapPathController.class); } @Override public void configEngine(Engine engine) {} @Override public void configPlugin(Plugins plugins) { System.err.println(); System.err.println("------------------------ log -----------------------------"); System.err.println(p.get("dbUrl")); System.err.println("------------------------ end -----------------------------"); System.err.println(); DruidPlugin dp = new DruidPlugin(p.get("dbUrl"), p.get("dbUser"), p.get("dbPwd")); plugins.add(dp); ActiveRecordPlugin arp = new ActiveRecordPlugin(dp); plugins.add(arp); arp.addMapping("t_ethereum_mev_v1", "hash", EthMev.class); arp.addMapping("t_swap_path", "sum_value_and_level", SwapPath.class); // 初始化内存数据库线程 SwapPathMemoryDb.startBuildSwapPathGroupByLp(); } @Override public void configInterceptor(Interceptors interceptors) { } @Override public void configHandler(Handlers handlers) { } }