WebConfig.java 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. package common.config;
  2. import com.jfinal.config.*;
  3. import com.jfinal.kit.Prop;
  4. import com.jfinal.plugin.activerecord.ActiveRecordPlugin;
  5. import com.jfinal.plugin.druid.DruidPlugin;
  6. import com.jfinal.server.undertow.UndertowServer;
  7. import com.jfinal.template.Engine;
  8. import common.utils.config.MyPropKit;
  9. import modules.ethmev.EthMevController;
  10. import modules.hello.HelloController;
  11. import modules.swappath.SwapPathController;
  12. import common.memory.SwapPathMemoryDb;
  13. import common.model.EthMev;
  14. import common.model.SwapPath;
  15. public class WebConfig extends JFinalConfig {
  16. static Prop p;
  17. public static void main(String[] args) {
  18. UndertowServer.start(WebConfig.class, 8088, true);
  19. }
  20. static void loadConfig() {
  21. if (p == null) {
  22. p = MyPropKit.useFirstFound("/webapp/backend/evi.properties", "./evi-dev.properties");
  23. }
  24. }
  25. @Override
  26. public void configConstant(Constants constants) {
  27. loadConfig();
  28. constants.setDevMode(p.getBoolean("devMode", false));
  29. // 开启对 JFinal web 项目组件 Controller、Interceptor、Validator 的注入
  30. constants.setInjectDependency(true);
  31. }
  32. @Override
  33. public void configRoute(Routes routes) {
  34. routes.add("/", HelloController.class);
  35. routes.add("/hello", HelloController.class);
  36. routes.add("/ethmev", EthMevController.class);
  37. routes.add("/swappath", SwapPathController.class);
  38. }
  39. @Override
  40. public void configEngine(Engine engine) {}
  41. @Override
  42. public void configPlugin(Plugins plugins) {
  43. System.err.println();
  44. System.err.println("------------------------ log -----------------------------");
  45. System.err.println(p.get("dbUrl"));
  46. System.err.println("------------------------ end -----------------------------");
  47. System.err.println();
  48. DruidPlugin dp = new DruidPlugin(p.get("dbUrl"), p.get("dbUser"), p.get("dbPwd"));
  49. plugins.add(dp);
  50. ActiveRecordPlugin arp = new ActiveRecordPlugin(dp);
  51. plugins.add(arp);
  52. arp.addMapping("t_ethereum_mev_v1", "hash", EthMev.class);
  53. arp.addMapping("t_swap_path", "sum_value_and_level", SwapPath.class);
  54. // 初始化内存数据库线程
  55. SwapPathMemoryDb.startBuildSwapPathGroupByLp();
  56. }
  57. @Override
  58. public void configInterceptor(Interceptors interceptors) {
  59. }
  60. @Override
  61. public void configHandler(Handlers handlers) {
  62. }
  63. }