这里写自定义目录标题

帮助链接

核心代码

/**
 * 通用配置
 * 
 * @author wiserice
 */
@Configuration
public class ResourcesConfig implements WebMvcConfigurer
{
    @Autowired
    private RepeatSubmitInterceptor repeatSubmitInterceptor;

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry)
    {
        /** 本地文件上传路径 */
        // 访问对外暴露的访问路径 /profile/下的文件会被映射到本地项目 /home/ripms/data/bioplantform/uploadfiles/profile/ 下的目录里面。
        //  Constants.RESOURCE_PREFIX  : /profile
        registry.addResourceHandler(Constants.RESOURCE_PREFIX + "/**")
                // BioinfoConfig.getProfile():  /home/ripms/data/bioplantform/uploadfiles/profile

                // http://172.16.3.43:8080/profile/avatar/2023/07/25/f45c9f9b-801b-4329-9f64-4ef55d9cd089.jpeg
                // /profile +   /avatar/2023/07/25/f45c9f9b-801b-4329-9f64-4ef55d9cd089.jpeg
                // + /home/ripms/data/bioplantform/uploadfiles/profile  + /avatar/2023/07/25/f45c9f9b-801b-4329-9f64-4ef55d9cd089.jpeg
                .addResourceLocations("file:" + BioinfoConfig.getProfile() + "/");

        /** swagger配置 */
        registry.addResourceHandler("/swagger-ui/**")
                .addResourceLocations("classpath:/META-INF/resources/webjars/springfox-swagger-ui/");
    }

    /**
     * 自定义拦截规则
     */
    @Override
    public void addInterceptors(InterceptorRegistry registry)
    {
        registry.addInterceptor(repeatSubmitInterceptor).addPathPatterns("/**");
    }

    /**
     * 跨域配置
     */
    @Bean
    public CorsFilter corsFilter()
    {
        CorsConfiguration config = new CorsConfiguration();
        config.setAllowCredentials(true);
        // 设置访问源地址
        config.addAllowedOriginPattern("*");
//        config.addAllowedOrigin("*");
        // 设置访问源请求头
        config.addAllowedHeader("*");
        // 设置访问源请求方法
        config.addAllowedMethod("*");
        // 有效期 1800秒
        config.setMaxAge(1800L);
        // 添加映射路径,拦截一切请求
        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
        source.registerCorsConfiguration("/**", config);
        // 返回新的CorsFilter
        return new CorsFilter(source);
    }
}

分析

在这里插入图片描述
其实,通俗点来说,就是等于 http://localhost:8080/profile ,服务器就知道去找本地的静态资源。
在这里插入图片描述

Logo

快速构建 Web 应用程序

更多推荐