最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

如何在SpringBoot中添加攔截器忽略請求URL當中的指定字符串

 更新時間:2023年08月22日 09:41:04   作者:@小匠  
這篇文章主要介紹了在SpringBoot中添加攔截器忽略請求URL當中的指定字符串,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

在SpringBoot中添加攔截器忽略請求URL當中的指定字符串

1 自定義攔截器

@Component
public class GlobalInterceptor implements HandlerInterceptor {
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        String path = request.getRequestURI();
        if (path.contains("/api/")) {
            path = path.replaceAll("/api/", "/");
            request.getRequestDispatcher(path).forward(request, response);
        }
        return true;
    }
}

2 注冊攔截器

@Configuration
@EnableWebMvc
public class WebMvcConfig implements WebMvcConfigurer {
    GlobalInterceptor globalInterceptor;
    @Autowired
    public WebMvcConfig(GlobalInterceptor globalInterceptor) {
        this.globalInterceptor = globalInterceptor;
    }
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(globalInterceptor).addPathPatterns("/api/**");
    }
}

SpringBoot 使用攔截器(配置特定的url請求會進入攔截器)

SpringBoot 使用攔截器步驟為:

1、按照Spring mvc的方式編寫一個攔截器類;

創(chuàng)建一個interceptor包

LoginInterceptor:
package com.springboot.web.interceptor;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class LoginInterceptor implements HandlerInterceptor {
	//主要是這個方法中實現攔截邏輯
	@Override
	public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
		System.out.println("已經進入攔截器");
		return true;
	}
	@Override
	public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
	}
	@Override
	public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
	}
}

2、編寫一個配置類繼承WebMvcConfigurerAdapter

3、為該配置類添加@Configuration注解,標注此類為一個配置類,讓Spring boot 掃描到;

4、覆蓋其中的addInterceptors方法并添加已經編寫好的攔截器:

代碼如下:編寫WebConfig配置類

package com.springboot.web.config;
import com.springboot.web.interceptor.LoginInterceptor;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
@Configuration //一定要加上這個注解,成為Springboot的配置類,不然不會生效
public class WebConfig extends WebMvcConfigurerAdapter {
	@Override
	public void addInterceptors(InterceptorRegistry registry) {
		String[] addPathPatterns = {//攔截所有請求
				"/*"
		};
		String[] excludePatterns = {//不攔截sayHi這個請求 【http://localhost:8080/sayHi】
				"/sayHi"
		};
		//如果有多個攔截器,可以繼續(xù)添加
		registry.addInterceptor(new LoginInterceptor()).addPathPatterns(addPathPatterns).excludePathPatterns(excludePatterns);
	}
}

測試下:

【http://localhost:8080/config】會打印“已經進入攔截器”,說明攔截器生效

【http://localhost:8080/sayHi】不會打印,說明不攔截配置生效。

到此這篇關于如何在SpringBoot中添加攔截器忽略請求URL當中的指定字符串的文章就介紹到這了,更多相關SpringBoot添加攔截器內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • java 設計模式(DAO)的實例詳解

    java 設計模式(DAO)的實例詳解

    這篇文章主要介紹了java 設計模式(DAO)的實例詳解的相關資料,希望通過本文能幫助到大家,需要的朋友可以參考下
    2017-09-09
  • SpringBoot內嵌tomcat處理有特殊字符轉義的問題

    SpringBoot內嵌tomcat處理有特殊字符轉義的問題

    這篇文章主要介紹了SpringBoot內嵌tomcat處理有特殊字符轉義的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Java裝飾者模式的深入了解

    Java裝飾者模式的深入了解

    這篇文章主要為大家介紹了Java裝飾者模式,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • 四個實例超詳細講解Java?貪心和枚舉的特點與使用

    四個實例超詳細講解Java?貪心和枚舉的特點與使用

    貪心算法是指,在對問題求解時,總是做出在當前看來是最好的選擇。也就是說,不從整體最優(yōu)上加以考慮,他所做出的是在某種意義上的局部最優(yōu)解,枚舉法的本質就是從所有候選答案中去搜索正確的解,枚舉算法簡單粗暴,他暴力的枚舉所有可能,盡可能地嘗試所有的方法
    2022-04-04
  • Java金額大小寫的轉換方法

    Java金額大小寫的轉換方法

    這篇文章主要為大家詳細介紹了Java金額大小寫的轉換方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • Java進階核心之InputStream流深入講解

    Java進階核心之InputStream流深入講解

    這篇文章主要給大家介紹了關于Java進階核心之InputStream流的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-02-02
  • java使用Runtime執(zhí)行系統(tǒng)命令遇到的問題

    java使用Runtime執(zhí)行系統(tǒng)命令遇到的問題

    這篇文章主要介紹了java使用Runtime執(zhí)行系統(tǒng)命令遇到的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Spring WebSocket 404錯誤的解決方法

    Spring WebSocket 404錯誤的解決方法

    這篇文章主要為大家詳細介紹了Spring WebSocket 404錯誤的解決方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • JAVA正則表達式過濾文件的實現方法

    JAVA正則表達式過濾文件的實現方法

    這篇文章主要介紹了JAVA正則表達式過濾文件的實現方法的相關資料,希望通過本文大家能夠掌握理解這部分內容,需要的朋友可以參考下
    2017-09-09
  • Java通過JNI 調用動態(tài)鏈接庫DLL操作

    Java通過JNI 調用動態(tài)鏈接庫DLL操作

    這篇文章主要介紹了Java通過JNI 調用動態(tài)鏈接庫DLL操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11

最新評論

榆社县| 永吉县| 洛川县| 中卫市| 阜阳市| 怀安县| 芦溪县| 浠水县| 浠水县| 沙田区| 日土县| 罗江县| 罗山县| 湖口县| 蓬安县| 巢湖市| 大渡口区| 晋宁县| 蓬莱市| 左权县| 新龙县| 远安县| 鄂温| 团风县| 贺州市| 南投县| 凌源市| 永春县| 惠州市| 堆龙德庆县| 武隆县| 维西| 麦盖提县| 公主岭市| 饶河县| 工布江达县| 耒阳市| 雷波县| 通道| 芒康县| 旺苍县|