总结:过滤器对无效请求处理更靠前
所用到的方法
作用:对请求的过程过滤,案例讲的是404状态码的过滤,对无效请求处理更靠前
代码总结:
1.从WebApplicationContext中获取controller里面的请求的地址和方法,让它作为过滤标准
注解:
@WebFilter 标记在类上,此类为过滤器类; 变量description,filterName,urlPatterns --引入Filter
@Resource 导入spring中某类
@AutoWired 导入已经用过的spring中某类
Filter源码类:
作用: 可以过滤请求资源或响应资源
WebApplicationContext源码类:
作用:spring启动后都内嵌到WebApplicationContext里面,即此类是根。
方法相关:
<T> T getBean(Class<T> var1) throws BeansException
RequestMappingHandlerMapping源码类:
作用:获取controller层代码中@RequstMapping/GetMapping/PostMapping定义的接口地址和接口请求方法
方法相关:
public Map<RequestMappingInfo, HandlerMethod> getHandlerMethods() --引入RequestMappingInfo,HandlerMethod
RequestMappingInfo源码类:
作用:controller层接口的基本信息
方法相关:
public PatternsRequestCondition getPatternsCondition()
public RequestMethodsRequestCondition getMethodsCondition()
HandlerMethod源码类:
作用: controller层接口的方法
方法相关:
public String getName()
public MethodParameter[] getMethodParameters()
2.获取客户端的请求信息
HttpServletRequest源码类--ServletRequest父源码类
普通方法:
public String getRequestURI()
public String getMethod();
public Map<String, String[]> getParameterMap();
3.过滤
FilterChainy源码类
普通方法: public void doFilter(ServletRequest request, ServletResponse response)