微服务 教程
1085个小节阅读:195.4k
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
接下来我们使用SpringMVC拦截器
使用maven创建SprinMVC的web项目
创建控制器方法
xxxxxxxxxx
"/m1") (
public String m1(){
System.out.println("控制器方法");
return "result";
}
创建拦截器类,该类实现HandlerInterceptor接口,需要重写三个方法:
xxxxxxxxxx
// 拦截器类
public class MyInterceptor implements HandlerInterceptor {
// 请求到达Controller前执行
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) {
System.out.println("请求到达Controller前");
// 如果return false则无法到达Controller
return true;
}
// 跳转到JSP前执行,此时可以向Request域添加数据
public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) {
System.out.println("跳转到JSP前");
request.setAttribute("name","百战");
}
// 跳转到JSP后执行,此时已经不能向Request域添加数据
public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) {
System.out.println("跳转到JSP后");
request.setAttribute("age",10);
}
}
编写JSP页面
xxxxxxxxxx
<%page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>结果</title>
</head>
<body>
<h3>name:${requestScope.name}</h3>
<h3>age:${requestScope.age}</h3>
</body>
</html>
在SpringMVC核心配置文件中配置拦截器
xxxxxxxxxx
<!-- 配置拦截器-->
<mvc:interceptors>
<mvc:interceptor>
<!-- 配置拦截器的作用路径-->
<mvc:mapping path="/**"/>
<!-- 拦截器对象 -->
<bean class="com.itbaizhan.interceptor.MyInterceptor"/>
</mvc:interceptor>
</mvc:interceptors>
1. 在SpringMVC中,定义拦截器需要实现接口
A Handler
B Interceptor
C Filter
D HandlerInterceptor
2. 在SpringMVC配置文件中,配置拦截器的标签为
A <mvc:interceptor>
B <mvc:filter>
C <mvc:filters>
D <mvc:handlerinterceptor>
1=>D 2=>A