首页 > 其他分享 >SpringMVC 拦截器

SpringMVC 拦截器

时间:2023-10-06 13:13:10浏览次数:29  
标签:拦截器 SpringMVC request HttpServletResponse public import response

SpringMVC 拦截器

image
image

<!--配置拦截器,可定义多个拦截器-->
<mvc:interceptors>
    <!--定义1个拦截器-->
    <mvc:interceptor>
        <!--用于指定拦截器匹配url-->
        <mvc:mapping path="/user/**"/>
        <!--用于指定拦截器排除的url-->
        <mvc:exclude-mapping path="/"/>
        <!--用来指定拦截器-->
        <bean class="com.tobie.interceptor.MyHandlerInterceptor"/>
    </mvc:interceptor>
</mvc:interceptors>
package com.tobie.interceptor;

import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * @author Tobieance
 * @description 自定义拦截器
 * @date 2023-09-14 16:02
 */
public class MyHandlerInterceptor implements HandlerInterceptor {
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        System.out.println(this.getClass().getSimpleName()+".preHandler");
        request.setAttribute("msg","<h1>拦截</h1>");
        request.getRequestDispatcher("/WEB-INF/view/result.jsp").forward(request,response);
        //返回值为true表示通过(默认),false表示拦截
        return false;
    }

    @Override
    public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
        System.out.println(this.getClass().getSimpleName()+".postHandler");

    }

    @Override
    public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
        System.out.println(this.getClass().getSimpleName()+".afterCompletion");
    }
}

标签:拦截器,SpringMVC,request,HttpServletResponse,public,import,response
From: https://www.cnblogs.com/tobieance/p/17744460.html

相关文章

  • SpringMVC 文件上传
    SpringMVC文件上传<!--支持文件上传--><beanid="multipartResolver"class="org.springframework.web.multipart.commons.CommonsMultipartResolver"><!--maxUploadSizePerFile:单个文件大小限制maxUploadSize:整个请求大小限制--><propert......
  • SpringMVC 异常处理
    SpringMVC异常处理异常处理类ExceptionHandlerpackagecom.tobie.globalexception;importorg.springframework.ui.ModelMap;importorg.springframework.web.bind.annotation.ControllerAdvice;importorg.springframework.web.bind.annotation.ExceptionHandler;import......
  • SpringMVC入门demo
    工作流程demo使用:配置文件配置DispatcherServlet<?xmlversion="1.0"encoding="UTF-8"?><!--更新版本为4.0--><web-appxmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns="http://xmlns.jcp.org/xml/ns/j......
  • SpringMVC 类型转换
    SpringMVC类型转换Spring引入通用的数据类型转换系统,其定义了SPI接口和相应的运行时执行类型转换的API,提供无状态、强类型其可以在任意类型之间进行类型转换,可以用于任何需要的地方(如SpEL、数据绑定等)内置类型转换器<!--开启类型转换服务--><mvc:annotation-drivenconver......
  • SpringMVC
    1、SpringMVC的工作原理?(1)用户向服务器发送请求,请求被springMVC前端控制器捕获;(2)前端控制器对请求URL进行解析,得到请求资源标识符(URL)然后根据该URL调用页面处理器获得该Handler配置的所有相关对象(包括Handler对象以及Handler对象对应的拦截器),最后以HandlerExecutionChai......
  • springmvc的工作流程
    1、springmvc工作原理图    2、springmvc工作流程1、用户向服务端发送一次请求,这个请求会先到前端控制器DispatcherServlet(也叫中央控制器)。2、DispatcherServlet接收到请求后会调用HandlerMapping处理器映射器。由此得知,该请求该由哪个Controller来处理(并未调用Co......
  • SpringMVC使用@Valid注解实现数据验证
    一、@Valid注解的作用@Valid注解是javax.validation包中的一个注解,它可以用来标注需要验证的数据对象。当一个带有@Valid注解的对象传递给SpringMVC的控制器方法时,SpringMVC会自动调用验证器来验证这个对象。二、数据验证的流程SpringMVC中的数据验证流程如下:......
  • SpringMVC拦截器
     1.拦截器接口 2.工作流程 3.配置拦截器1<!--配置拦截器(可多个)-->2<mvc:interceptors>3<mvc:interceptor>4<!--设置拦截器要拦截的url地址-->5<mvc:mappingpath="/user/**"/>6<!--设置拦截器不拦截的url地址-->7......
  • SpringMVC异常处理
     @ControllerAdvice没有切点只有增强1.全局统一异常处理类1packagecom.cn.globalexpction;23importorg.springframework.ui.ModelMap;4importorg.springframework.web.bind.annotation.ControllerAdvice;5importorg.springframework.web.bind.annotation.......
  • SpringMVC resultful架构风格
     <inputtype="hidden"name="_method"value="DELETE"/>  1.RestfulController.java 1packagecom.cn.restful;23importorg.springframework.stereotype.Controller;4importorg.springframework.ui.ModelMap;5......