package com.example.dahua; import com.example.dahua.common.SwitchLanguage; import com.example.dahua.lib.FilePath; import com.example.dahua.lib.NetSDKLib; import com.sun.jna.Native; import org.mybatis.spring.annotation.MapperScan; import org.mybatis.spring.boot.autoconfigure.MybatisAutoConfiguration; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; import org.springframework.boot.autoconfigure.jdbc.DataSourceTransactionManagerAutoConfiguration; import org.springframework.boot.web.servlet.MultipartConfigFactory; import org.springframework.cloud.client.discovery.EnableDiscoveryClient; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.scheduling.annotation.EnableAsync; import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import springfox.documentation.builders.PathSelectors; import springfox.documentation.builders.RequestHandlerSelectors; import springfox.documentation.service.ApiInfo; import springfox.documentation.spi.DocumentationType; import springfox.documentation.spring.web.plugins.Docket; import springfox.documentation.swagger2.annotations.EnableSwagger2; import javax.servlet.MultipartConfigElement; import javax.swing.*; import java.io.File; import java.util.concurrent.Executor; import java.util.concurrent.LinkedBlockingDeque; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; @EnableAutoConfiguration(exclude = {DataSourceAutoConfiguration.class, DataSourceTransactionManagerAutoConfiguration.class, MybatisAutoConfiguration.class}) @SpringBootApplication @MapperScan("com.example.dahua.dao") @EnableDiscoveryClient public class DahuaApplication { public static void main(String[] args) { SpringApplication.run(DahuaApplication.class, args); new FilePath().createFile(); /*SwingUtilities.invokeLater(new Runnable() { @Override public void run() { if(NetSDKLib.NETSDK_INSTANCE != null && NetSDKLib.CONFIG_INSTANCE != null) { System.setProperty("java.awt.im.style", "on-the-spot"); // 去除中文输入弹出框 // System.setProperty("java.awt.headless","false"); SwitchLanguage demo = new SwitchLanguage(); demo.setVisible(true); } } });*/ } @EnableAsync @Configuration class TaskPoolConfig{ @Bean("taskExecutor") public Executor taskExecutor(){ ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); executor.setCorePoolSize(10); executor.setMaxPoolSize(20); executor.setQueueCapacity(200); executor.setKeepAliveSeconds(60); executor.setThreadNamePrefix("taskExecutor-"); executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy()); return executor; } } @Bean public MultipartConfigElement multipartConfigElement() { MultipartConfigFactory factory = new MultipartConfigFactory(); //单个文件最大 factory.setMaxFileSize("10MB"); /// 设置总上传数据总大小 factory.setMaxRequestSize("50MB"); return factory.createMultipartConfig(); } }