1. 程式人生 > >spring boot 靜態資源和攔截器

spring boot 靜態資源和攔截器

classpath:/META-INF/resources
classpath:/resources
classpath:/static
classpath:/public

3.配置檔案

#預設值為 /**
spring.mvc.static-path-pattern=
#預設值為 classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/
spring.resources.static-locations=這裡設定要指向的路徑,多個使用英文逗號隔開

4.自定義靜態資源對映

@Configuration
public class MyWebMvcConfigurerAdapter extends WebMvcConfigurerAdapter { /** * 配置靜態訪問資源 * @param registry */ @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("/my/**").addResourceLocations("classpath:/my/"); super
.addResourceHandlers(registry); } }
4.1訪問外部目錄
@Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/my/**").addResourceLocations("file:E:/my/");
        super.addResourceHandlers(registry);
    }

4.2頁面跳轉

/**
     * 以前要訪問一個頁面需要先建立個Controller控制類,再寫方法跳轉到頁面
     * 在這裡配置後就不需要那麼麻煩了,直接訪問http://localhost:8080/toLogin就跳轉到login.jsp頁面了
     * @param
registry */
@Override public void addViewControllers(ViewControllerRegistry registry) { registry.addViewController("/toLogin").setViewName("login"); super.addViewControllers(registry); }

5.攔截器

public class MyInterceptor implements HandlerInterceptor {
    @Override
    public boolean preHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o) throws Exception {
        System.out.println("開始攔截--------------------");
        return true;
    }

    @Override
    public void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception {
        System.out.println("攔截中----------------------");
    }

    @Override
    public void afterCompletion(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, Exception e) throws Exception {
        System.out.println("攔截完成----------------------");
    }
}
5.1註冊攔截器
/**
* 攔截器
* @param registry
*/
@Override
public void addInterceptors(InterceptorRegistry registry) {
    // addPathPatterns 用於新增攔截規則
    // excludePathPatterns 使用者排除攔截
    registry.addInterceptor(new MyInterceptor()).addPathPatterns("/**").excludePathPatterns("/toLogin","/login");
    super.addInterceptors(registry);
}

相關推薦

spring boot 靜態資源攔截

classpath:/META-INF/resources classpath:/resources classpath:/static classpath:/public 3.配置檔案 #預設值為 /** spring.mvc.static-pa

spring Boot 靜態資源攔截

spring Boot 靜態資源與攔截器 優先順序:META-INF/resources > resources > static > public   一、對映資源路徑 1、 spring.resources.static-locatio

Spring Boot乾貨系列:(六)靜態資源攔截處理

正文     前面章節我們也有簡單介紹過SpringBoot中對靜態資源的預設支援,今天詳細的來介紹下預設的支援,以及自定義擴充套件如何實現。 預設資源對映 Spring Boot 預設為我們提供了靜態資源處理,使用 WebMvcAutoConfiguration 中

Springboot中靜態資源攔截處理

背景: 在專案中我使用了自定義的Filter 這時候過濾了很多路徑,當然對靜態資源我是直接放過去的,但是,還是出現了靜態資源沒辦法訪問到springboot預設的資料夾中得檔案   說下預設對映的資料夾有: classpath:/META-INF/resourc

微服務 SpringBoot 2.0(八):靜態資源攔截處理

一文搞清楚靜態資源和攔截器 —— Java面試必修 引言 接觸一個web專案,首先要確認的就是入口,所以靜態資源和攔截器在專案中是架構級的,在第五章我們整合了Thymeleaf模組,初次認識了SpringBoot對靜態資源的預設支援。今天我們來繼續學習Sp

Spring boot 靜態資源處理以及攔截的使用

前言 本章主要圍繞WebMvcConfigurer,簡單介紹spring boot如何處理靜態資源以及使用攔截器的使用 靜態資源 spring boot預設為我們提供預設的配置方式 classpath:/META-INF/resources classpath

spring boot 靜態資源。。

web資源 length fix 入口 cep 等等 comm esp reat spring Boot 默認為我們提供了靜態資源處理,使用 WebMvcAutoConfiguration 中的配置各種屬性。 建議大家使用Spring Boot的默認配置方式,如果需要特殊處

spring boot 學習(十二)攔截實現IP黑名單

ppi html .html 日期類 dpa asp tails 我們 req 攔截器實現IP黑名單 前言 最近一直在搞 Hexo+GithubPage 搭建個人博客,所以沒怎麽進行 SpringBoot 的學習。所以今天就將上次的”?秒防刷新”進行了一番修改。上次是采用註

spring boot 靜態資源映射

mp4 hadoop ont reg system ssp test nds handler package com.ehongcn.ccp.ss.dd.common.security; import org.springframework.beans.factory.an

Spring Boot靜態資源處理

內容 獲取request adapter 邏輯 keyword control 導致 match creat Spring Boot靜態資源處理 8.8 Spring Bo

Spring Boot實踐——三種攔截的創建

bsp http etl 當前 出現 規範 not exe () 引用:https://blog.csdn.net/hongxingxiaonan/article/details/48090075 Spring中的攔截器   在web開發中,攔截器是經常用到的功能。它可

Spring Boot 靜態資源路徑分析

導致 路徑 分享圖片 ota thymeleaf map ppi contex pub   最近在接觸一個看公司的java後臺項目(采用的耶魯大學開源的一個cas單點登錄系統),用的是框架是Spring Boot,用的模板是Thymeleaf,於是我生成一個Spring B

spring boot 自定義登入攔截

        最近在努力學習spring boot中,這裡記錄一下攔截器的相關知識,在spring boot中,寫一個自定義的攔截器類,用於攔截不通過登入之後而進行的非法訪問,攔截的操作,也是日常專案中,都要用到的,不多說了,看正文。   &n

spring boot靜態資源訪問配置(訪問專案資料夾外的檔案)

很多類似的博文,但是實際配置後發現是有問題的。下面是完整的yml靜態資源訪問配置,在spring:下新增 mvc: static-path-pattern: /** #這個配置是預設配置 http:

Spring Boot靜態資源

Spring Boot靜態資源 Spring Boot靜態資源的存放位置 1. application.properties配置 2. JavaConfig - WebMvcConfigurationSupport webjars webjars

解決靜態資源攔截攔截的最簡方法!

關於這個問題網上有很多種解決方法,比如在springmvc.xml配置檔案種新增這一段(雖然這樣很簡單,就兩行程式碼,但它是有前提的,有的時候會無效!) <!-- 過濾靜態資源 --> <mvc:default-servlet-handler /> <!--

Spring Boot 靜態資源訪問原理解析

一、前言   springboot配置靜態資源方式是多種多樣,接下來我會介紹其中幾種方式,並解析一下其中的原理。 二、使用properties屬性進行配置   應該說 spring.mvc.static-path-pattern 和 spring.resources.static-locations這兩

Spring Boot 2.x配置攔截

攔截器功能強大,能夠深入方法前後,常應用於日誌記錄、許可權檢查和效能檢測等,幾乎是專案中不可或缺的一部分,本文就來實現Spring Boot自定義攔截器的配置。 理論指導 問:Spring Boot怎麼配置攔截器? 答:配置一個攔截器需要兩步完成。 自定義攔截器,實現Han

Spring Boot 優雅的配置攔截方式

其實spring boot攔截器的配置方式和springMVC差不多,只有一些小的改變需要注意下就ok了。下面主要介紹兩種常用的攔截器: 一、基於URL實現的攔截器: public class LoginInterceptor extends HandlerInterceptorAdapter{

spring boot 靜態資源修改能否立即生效問題

/* 如果將要訪問的靜態資源放在專案的類路徑下面即配置為"classpath:/BookPicture/"那麼當該路徑下的資 源發生變化時是不立即生效的,即只有重啟後才能訪問到變化的資源; 解決辦法將靜態資源放在非專案類路徑下即可 "file:F: