ms group dev 6 роки тому
батько
коміт
df3e10c63c
1 змінених файлів з 16 додано та 4 видалено
  1. 16 4
      src/main/java/net/mingsoft/config/WebConfig.java

+ 16 - 4
src/main/java/net/mingsoft/config/WebConfig.java

@@ -1,5 +1,7 @@
 package net.mingsoft.config;
 
+import java.io.File;
+
 import org.springframework.aop.Advisor;
 import org.springframework.aop.support.DefaultPointcutAdvisor;
 import org.springframework.aop.support.JdkRegexpMethodPointcut;
@@ -23,6 +25,7 @@ import com.alibaba.druid.support.spring.stat.BeanTypeAutoProxyCreator;
 import com.alibaba.druid.support.spring.stat.DruidStatInterceptor;
 
 import net.mingsoft.basic.interceptor.ActionInterceptor;
+import net.mingsoft.basic.util.BasicUtil;
 
 @Configuration
 public class WebConfig implements WebMvcConfigurer {
@@ -50,10 +53,19 @@ public class WebConfig implements WebMvcConfigurer {
 
 	@Override
 	public void addResourceHandlers(ResourceHandlerRegistry registry) {
-		registry.addResourceHandler("/html/**").addResourceLocations("/html/");
-		registry.addResourceHandler("/app/**").addResourceLocations("classpath:/app/");
-		registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");
-		registry.addResourceHandler("/api/**").addResourceLocations("classpath:/api/");
+		//jar包方式映射处理
+				String classPath =BasicUtil.getClassPath("");
+				if(classPath.startsWith("file")) {
+					registry.addResourceHandler("/upload/**").addResourceLocations("file:" + BasicUtil.getRealPath("upload") + File.separator);
+					registry.addResourceHandler("/html/**").addResourceLocations("file:" + BasicUtil.getRealPath("html") + File.separator);
+					registry.addResourceHandler("/templets/**").addResourceLocations("file:" + BasicUtil.getRealPath("templets") + File.separator);
+				}else {
+					//必须做判断,不然jar运行的html路径会被覆盖掉
+					registry.addResourceHandler("/html/**").addResourceLocations("/html/");
+				}
+				registry.addResourceHandler("/app/**").addResourceLocations("classpath:/app/");
+				registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");
+				registry.addResourceHandler("/api/**").addResourceLocations("classpath:/api/");
 	}
 
 	/**