.excludePathPatterns怎么排除多个文件
时间: 2024-06-08 13:04:51 浏览: 42
您可以使用`.excludePathPatterns`方法来排除多个文件。该方法接受一个字符串数组作为参数,您可以在数组中列出要排除的多个文件路径。
下面是一个示例代码,展示如何使用`.excludePathPatterns`方法来排除多个文件:
```java
@Configuration
public class WebConfig implements WebMvcConfigurer {
@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(new YourInterceptor())
.excludePathPatterns("/file1")
.excludePathPatterns("/file2")
.excludePathPatterns("/file3");
}
}
```
在上述示例中,`YourInterceptor`是您自定义的拦截器类。`.excludePathPatterns`方法调用了三次,分别排除了`/file1`、`/file2`和`/file3`这三个文件的拦截。
您可以根据需要添加更多的`.excludePathPatterns`方法调用来排除其他文件路径。
相关问题
public void addInterceptors(InterceptorRegistry registry){ registry.addInterceptor(new MVCInterceptor()) .addPathPatterns("/**") .excludePathPatterns("/show_login") .excludePathPatterns("/check_login_mybatis") .excludePathPatterns("/no_privilege") .excludePathPatterns("/register") .excludePathPatterns("/js/*") .excludePathPatterns("/css/*") .excludePathPatterns("/image/*") .excludePathPatterns("/css/img/*") .excludePathPatterns("/error") .excludePathPatterns("/css/font/*") .excludePathPatterns("/*.js") .excludePathPatterns("/*.html") ; }
这段代码是在Spring MVC框架中注册拦截器,其中添加了一个MVCInterceptor拦截器,该拦截器会拦截所有的请求("/**"),但排除了一些特定的路径,如登录、注册、静态资源等。
拦截器可以在请求到达Controller之前或之后对请求进行处理,用于实现一些通用的功能,例如身份验证、日志记录等。在Spring MVC中,可以通过实现HandlerInterceptor接口来自定义拦截器,并通过InterceptorRegistry进行注册。在注册时,可以指定拦截的路径和排除的路径,以及拦截器的优先级等。
package com.de.debook.config; import com.de.debook.interceptor.AuthorityInterceptor; import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; @Configuration public class ConfigRegistCanter implements WebMvcConfigurer { //注册拦截器 //addPathPatterns 用来设置拦截路径 //excludePathPatterns 用来设置白名单,也就是不需要触发这个拦截器的路径。 //addPathPatterns("/**") 表示拦截所有的请求 @Override public void addInterceptors(InterceptorRegistry registry) { registry.addInterceptor(new AuthorityInterceptor()) .excludePathPatterns("/user/login.html") .excludePathPatterns("/user/login") .excludePathPatterns("/user/login.out") .excludePathPatterns("/user/register.html") .excludePathPatterns("/user/register") .excludePathPatterns("/admin/register.html") .excludePathPatterns("/index.html") .excludePathPatterns("/js/**") .excludePathPatterns("/css/**") .excludePathPatterns("/images/**") .excludePathPatterns("/layui/**") .excludePathPatterns("/wangEditor/**"); } //这个方法是用来配置静态资源的,比如html,js,css等 @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { } }
这是一个 Spring Boot 配置类,用于注册拦截器和配置静态资源的映射路径。具体来说,代码中的 `AuthorityInterceptor` 是自定义的拦截器类,用来实现用户权限的控制。在 `addInterceptors` 方法中,通过 `registry.addInterceptor()` 方法添加拦截器,并使用 `excludePathPatterns` 方法设置白名单,即不需要被拦截的路径。在这个例子中,白名单包括登录、注册等页面、静态资源等。在 `addResourceHandlers` 方法中,可以配置静态资源的映射路径。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![java](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)