package com.product; import com.product.core.spring.context.SpringBeanUtil; import com.product.customer.service.CreateSignatureFile; import com.product.file.util.PdfConcurrenceUtil; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; import org.springframework.util.ResourceUtils; import com.product.admin.config.RegistValidate; import com.product.core.cache.DataPoolCacheImpl; import com.product.core.config.Global; import com.product.core.connection.DataSourceManager; import com.product.core.spring.context.SpringMVCContextHolder; /** * 系统启动入口 * 缓存系统数据 * 初始编码管理器 * 初始流水号管理器 * 初始接口参数验证 * 初始集群客户端连接池 * 扫描多个路径 */ @SpringBootApplication(exclude = DataSourceAutoConfiguration.class, scanBasePackages = {"com.product","com.home","org.spring.service.core"}) public class Application extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder applicationBuilder) { return applicationBuilder.sources(Application.class); } public static void main(String[] args) { try { SpringApplication.run(Application.class, args); boolean cacheFlat = DataPoolCacheImpl.getInstance().cacheALLData(); boolean codeFlat = DataPoolCacheImpl.getInstance().initCodeManager(); RegistValidate.getInstance().registValidateParameter(); boolean connFlat = DataSourceManager.getInstance().initClientConnectionPool(); InitialLoad.runInitialization(); PdfConcurrenceUtil.init(); String rootPath = ResourceUtils.getURL("classpath:").getPath(); Global.setPropertyValue("root.path", rootPath); Global.setPropertyValue("jdk.home", System.getProperties().getProperty("java.home")); SpringBeanUtil.getBean(CreateSignatureFile.class).analysisSignaturePatch(); SpringMVCContextHolder.getSystemLogger().info("root.path:" + rootPath); SpringMVCContextHolder.getSystemLogger().info("jdk.home:" + System.getProperties().getProperty("java.home")); if (cacheFlat && codeFlat && connFlat) { SpringMVCContextHolder.getSystemLogger().info("Successful System Startup ! "); } else { SpringMVCContextHolder.getSystemLogger().error("System startup failed, Please contact the administrator!"); } } catch (Exception e) { e.printStackTrace(); SpringMVCContextHolder.getSystemLogger().error("System startup failed:"+e.getMessage()); SpringMVCContextHolder.getSystemLogger().error("System startup failed, Please contact the administrator!"); } } }