【SpringMVC】拦截器(控制器拦截前端请求各阶段可执行操作)

29 篇文章 0 订阅
25 篇文章 0 订阅

拦截器:拦截前端页面发送的请求。在拦截请求之前,之后,请求执行完之后可进行操作。并且拦截器是一个接口,需要用一个类来实现该接口。
创建拦截器步骤:

  1. 创建一个组件(类),用于实现拦截器接口:
public class MyFirstInterceptor implements HandlerInterceptor{

	
	@Override
	public void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, Exception arg3)
			throws Exception {
		System.out.println("MyFirstInterceptor...afterCompletion");	
	}

	@Override
	public void postHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2, ModelAndView arg3)
			throws Exception {
		System.out.println("MyFirstInterceptor...postHandle");		
	}

	@Override
	public boolean preHandle(HttpServletRequest arg0, HttpServletResponse arg1, Object arg2) throws Exception {
		System.out.println("MyFirstInterceptor...preHandle");
		return true;
	}

}

说明:preHandle:在拦截前端请求之前可执行的方法。postHandle:在拦截前端请求之后可执行的方法。afterCompletion:在执行完前端整个请求方法后拦截器要执行的方法。

  1. 在容器配置文件中配置拦截器组件(共有如下两种方法):
<!-- 测试拦截器 -->
	<mvc:interceptors>
		<!-- 1.配置某个拦截器:默认是拦截所有请求; -->
		<bean class="com.atguigu.controller.MyFirstInterceptor"></bean>
		
		<!-- 2.配置某个拦截器更详细的信息 -->
		<!-- <mvc:interceptor>
		<mvc:mapping path="/test01"/>
			<bean class="com.atguigu.controller.MyFirstInterceptor"></bean>
		</mvc:interceptor> -->
	</mvc:interceptors>
  1. 测试
    1)前端页面发送/test01请求。
    2)创建一个控制器组件,用于拦截前端请求:
@Controller
public class InterceptorTestController {
	
	
	@RequestMapping(value="/test01")
	public String test01(){
		System.out.println("test01....");
		return "success";
	}
}

结果如下:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值