记录一下,省的下次还要翻
一、原理
自定义拦截器根据WebMvcConfigurer中拦截器加入的顺序执行。
二、代码
1.拦截器和配置
代码如下(示例):
package com.module.interceptor;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
* @author 抡转
* @date 2022/9/13
* @description
*/
@Configuration
@Slf4j
public class WebConfig implements WebMvcConfigurer {
@Data
class Interceptor implements HandlerInterceptor {
private String name;
public Interceptor(String name) {
this.name = name;
}
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
log.info("我是拦截器:" + name);
return true;
}
}
@Override
public void addInterceptors(InterceptorRegistry registry) {
for (int i = 0; i < 10; i++) {
registry.addInterceptor(new Interceptor(i + "号"));
}
}
}
2.执行结果
总结
就是这样了。