springboot項目訪問靜態(tài)資源的配置代碼實例
這篇文章主要介紹了springboot項目訪問靜態(tài)資源的配置代碼實例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
這里只是簡單記錄當(dāng)上傳圖片不是放在tomcat其他服務(wù)器中時,只是放在磁盤中便可以這樣配置,在項目啟動后可以訪問到磁盤中的資源。
@Configuration
public class SystemConfigurer implements WebMvcConfigurer {
@Value("${jeewx.path.upload}")
private String upLoadPath; //配置的文件的存儲位置如 “E://image”
@Value("${spring.resource.static-locations}")
private String staticLocations; //其他靜態(tài)資源位置,如js,css文件
/**默認(rèn)攔截器排除資源*/
private List<String> EXCLUDE_PATHS= Arrays.asList("/plug-in/**","/content/**","/upload/**","/system/*.do","/error");
@Autowired
private LoginInterceptor loginInterceptor;
@Autowired
private AccessSignInterceptor accessSignInterceptor;
@Value("${jeewx.interceptor.is-open}")
private boolean isOpen;
@Value("${jeewx.interceptor.excludeUrls.login-interceptor}")
private String loginInterceptorExcludeUrls;
@Value("${jeewx.interceptor.excludeUrls.access-sign-interceptor}")
private String accessSignInterceptorExcludeUrls;
/**
* 靜態(tài)資源的配置 - 使得可以從磁盤中讀取 Html、圖片、視頻、音頻等
*/
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/**")
.addResourceLocations("file:" + upLoadPath + "http://")
.addResourceLocations(staticLocations.split(","));
}
/** * 登錄驗證碼 */ @Bean @SuppressWarnings({ "rawtypes", "unchecked" }) public ServletRegistrationBean randCodeImageServlet() { ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(new RandCodeImageServlet(), "/randCodeImage"); return servletRegistrationBean; } /** * 攔截器(登錄 + 簽名) */ public void addInterceptors(InterceptorRegistry registry) { if(isOpen) { log.info("loginInterceptorExcludeUrls: "+loginInterceptorExcludeUrls); log.info("accessSignInterceptorExcludeUrls: "+accessSignInterceptorExcludeUrls); registry.addInterceptor(loginInterceptor).addPathPatterns("/**/back/**/*").excludePathPatterns(EXCLUDE_PATHS).excludePathPatterns(loginInterceptorExcludeUrls.split(",")); registry.addInterceptor(accessSignInterceptor).addPathPatterns("/**").excludePathPatterns("/**/back/**").excludePathPatterns(EXCLUDE_PATHS).excludePathPatterns(accessSignInterceptorExcludeUrls.split(",")); } } /** * 默認(rèn)跳轉(zhuǎn)登錄頁面 */ @Override public void addViewControllers(ViewControllerRegistry registry) { registry.addViewController("/").setViewName("redirect:/system/login.do"); registry.setOrder(Ordered.HIGHEST_PRECEDENCE); } }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Java使用ProcessBuilder?API優(yōu)化流程
Java?的?Process?API?為開發(fā)者提供了執(zhí)行操作系統(tǒng)命令的強(qiáng)大功能,這篇文章將詳細(xì)介紹如何使用?ProcessBuilder?API?來方便的操作系統(tǒng)命令,需要的可以收藏一下2023-06-06
MyBatis-Plus 分頁插件配置的兩種方式實現(xiàn)
本文主要介紹了MyBatis-Plus 分頁插件配置的兩種方式實現(xiàn),包括使用PaginationInterceptor和MybatisPlusInterceptor兩種方式,具有一定的參考價值,感興趣的可以了解一下2025-03-03
Java日常練習(xí)題,每天進(jìn)步一點(diǎn)點(diǎn)(57)
下面小編就為大家?guī)硪黄狫ava基礎(chǔ)的幾道練習(xí)題(分享)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧,希望可以幫到你2021-08-08
Java實現(xiàn)網(wǎng)絡(luò)文件下載以及下載到指定目錄
在Spring框架中,StreamUtils和FileCopyUtils兩個工具類提供了方便的文件下載功能,它們都屬于org.springframework.util包,可以通過簡單的方法調(diào)用實現(xiàn)文件流的復(fù)制和下載,這些工具類支持多種參數(shù)傳遞,涵蓋了文件下載的多種場景2024-09-09
Java輕松掌握面向?qū)ο蟮娜筇匦苑庋b與繼承和多態(tài)
本文主要講述的是面向?qū)ο蟮娜筇匦裕悍庋b,繼承,多態(tài),內(nèi)容含括從封裝到繼承再到多態(tài)的所有重點(diǎn)內(nèi)容以及使用細(xì)節(jié)和注意事項,內(nèi)容有點(diǎn)長,請大家耐心看完2022-05-05

