#部分代码
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
//WINDOWS用
String os=System.getProperty("os.name");
if (os.startsWith("win")){
// registry.addResourceHandler("/**").addResourceLocations("file:D:/viewworkspace/kaoshi-ui/dist/");
ApplicationHome applicationHome=new ApplicationHome();
File dir = applicationHome.getDir();
String path = dir.toPath().toString();
path= path+"/dist/";
registry.addResourceHandler("/**").addResourceLocations("file:"+path);
}else {
ApplicationHome applicationHome=new ApplicationHome();
File dir = applicationHome.getDir();
String path = dir.toPath().toString();
path= path+"/dist/";
registry.addResourceHandler("/**").addResourceLocations("file:"+path);
}
}
完整代码
package com.gxbtxc.monolithic.config;
import java.io.File;
import java.util.List;
import com.gxbtxc.monolithic.BtxcMonolithicServerApplication;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.system.ApplicationHome;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.method.support.HandlerMethodArgumentResolver;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer;
import com.gxbtxc.monolithic.common.resolver.CurrentUserDeptIdHandlerMethodArgumentResolver;
import com.gxbtxc.monolithic.common.resolver.CurrentUserHandlerMethodArgumentResolver;
import com.gxbtxc.monolithic.common.resolver.CurrentUserIdHandlerMethodArgumentResolver;
/**
* MVC配置
* @author yfm
*/
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
@Autowired
private CurrentUserHandlerMethodArgumentResolver currentUserHandlerMethodArgumentResolver;
@Autowired
private CurrentUserIdHandlerMethodArgumentResolver currentUserIdHandlerMethodArgumentResolver;
@Autowired
private CurrentUserDeptIdHandlerMethodArgumentResolver currentUserDeptIdHandlerMethodArgumentResolver;
@Override
public void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers) {
argumentResolvers.add(currentUserHandlerMethodArgumentResolver);
argumentResolvers.add(currentUserIdHandlerMethodArgumentResolver);
argumentResolvers.add(currentUserDeptIdHandlerMethodArgumentResolver);
}
@Bean
public FreeMarkerConfigurer freemarkerConfig(){
FreeMarkerConfigurer config = new FreeMarkerConfigurer();
config.setDefaultEncoding("utf8");
config.setTemplateLoaderPaths("classpath:/templates/code/","classpath:/templates/view/","classpath:/templates/prometheus/");
return config;
}
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("*")
.allowCredentials(true)
.allowedMethods("GET", "POST", "PUT", "DELETE", "OPTIONS")
.maxAge(3600);
}
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
//WINDOWS用
String os=System.getProperty("os.name");
if (os.startsWith("win")){
// registry.addResourceHandler("/**").addResourceLocations("file:D:/viewworkspace/kaoshi-ui/dist/");
ApplicationHome applicationHome=new ApplicationHome();
File dir = applicationHome.getDir();
String path = dir.toPath().toString();
path= path+"/dist/";
registry.addResourceHandler("/**").addResourceLocations("file:"+path);
}else {
ApplicationHome applicationHome=new ApplicationHome();
File dir = applicationHome.getDir();
String path = dir.toPath().toString();
path= path+"/dist/";
registry.addResourceHandler("/**").addResourceLocations("file:"+path);
}
}
public static void main(String[] args) {
ApplicationHome applicationHome=new ApplicationHome(BtxcMonolithicServerApplication.class.getClass());
File dir = applicationHome.getDir();
System.out.println(dir.toPath());
}
}