1. 程式人生 > >spring Boot 靜態資源與攔截器

spring Boot 靜態資源與攔截器

spring Boot 靜態資源與攔截器

優先順序:META-INF/resources > resources > static > public

 

一、對映資源路徑

1、

spring.resources.static-locations=classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/,file:F:/收藏圖片和視訊以及音樂 勿刪/視訊/介面新聞視訊/

直接在後,加上資源路徑

2、繼承WebMvcConfigurerAdapter,重寫 addResourceHandlers方法

registey.addResourceHandle("pattrn-url").addResourceLocations("file位置")

 

二、url進入controller然後再跳轉

輸入http://localhost:8989/toindex 會跳轉到 templates/index.html 頁面,前提必須加入前臺框架包,比如freemakerthymeleafjsp等等

二、攔截器addInterceptors

  • 1、建立我們自己的攔截器類並實現 HandlerInterceptor 介面
  • 2、其實重寫WebMvcConfigurerAdapter
    中的addInterceptors方法把自定義的攔截器類新增進來即可

 

1. boolean preHandle (HttpServletRequest request, HttpServletResponse response, Object handle)方法:該方法將在請求處理之前進行呼叫,只有該方法返回true,才會繼續執行後續的InterceptorController,當返回值為true 時就會繼續呼叫下一個InterceptorpreHandle 方法,如果已經是最後一個Interceptor的時候就會是呼叫當前請求的Controller方法; 


2.void postHandle (HttpServletRequest request, HttpServletResponse response, Object handle, ModelAndView modelAndView)方法:該方法將在請求處理之後,DispatcherServlet進行檢視返回渲染之前進行呼叫,可以在這個方法中對Controller 處理之後的ModelAndView 物件進行操作。 
3.void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handle, Exception ex)
方法:該方法也是需要當前對應的InterceptorpreHandle方法的返回值為true時才會執行,該方法將在整個請求結束之

後,也就是在DispatcherServlet 渲染了對應的檢視之後執行。用於進行資源清理。