标签:Exception 拦截器 SpringMVC HttpServletResponse import servlet public
拦截器:拦截网页请求,只能拦截发送至Handler类方法的请求。访问网页(html,jsp)不拦截,若想外部无法访问直接放入
WEB-INF文件夹内
* 1、创建自定义拦截器类实现HandlerInterceptor接口
* 2、在springmvc配置文件的<mvc:interceptors>里配置<bean>拦截所有或者<mvc:interceptor>拦截具体哪些方法的请求
<!-- 配置拦截器: 所有拦截器都包含在mvc:interceptors标签里-->
<mvc:interceptors>
<!-- 配置拦截器:会拦截所有请求 -->
<bean class="crud.Filters.FirstFilter"></bean>
<!-- 配置具体资源拦截器 -->
<mvc:interceptor>
<!-- 拦截的请求 ,path设置为:/@RequestMapping里的value值 -->
<mvc:mapping path="/emps"/>
<!-- <mvc:mapping path="/testFilter"/> -->
<!-- 不拦截的请求 ,path设置为:/@RequestMapping里的value值-->
<mvc:exclude-mapping path="/testFilter"/>
<bean class="crud.Filters.SecondFilter"></bean>
</mvc:interceptor>
</mvc:interceptors>
<mvc:view-controller path="views/success" view-name="success"/>
package crud.Filters;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
public class FirstFilter implements HandlerInterceptor{
/**
* 该方法在目标方法之前被调用.
* 若返回值为 true, 则继续调用后续的拦截器和目标方法.
* 若返回值为 false, 则不会再调用后续的拦截器和目标方法.
*
* 可以考虑做权限. 日志, 事务等.
*/
@Override
public boolean preHandle(HttpServletRequest request,
HttpServletResponse response, Object handler) throws Exception {
System.out.println("第一个拦截器: preHandle");
return true;
}
/**
* 调用目标方法之后, 但渲染视图之前.
* 可以对请求域中的属性或视图做出修改.
*/
@Override
public void postHandle(HttpServletRequest request,
HttpServletResponse response, Object handler,
ModelAndView modelAndView) throws Exception {
System.out.println("第一个拦截器:postHandle");
}
/**
* 渲染视图之后被调用. 释放资源
*/
@Override
public void afterCompletion(HttpServletRequest request,
HttpServletResponse response, Object handler, Exception ex)
throws Exception {
System.out.println("第一个拦截器:afterCompletion");
}
}
标签:Exception,拦截器,SpringMVC,HttpServletResponse,import,servlet,public 来源: https://blog.csdn.net/qq_38487155/article/details/89714251
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。