zoukankan      html  css  js  c++  java
  • springMVC之拦截器

    有两种方法配置spring的拦截器

    1. 实现接口: HandleInterceptor

    public class MyInterceptor1 implements HandlerInterceptor {
    
    	@Override
    	public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object obj, Exception e) throws Exception {
    		System.out.println("最后运行。!!一般用于释放资源。。");
    	}
    
    	@Override
    	public void postHandle(HttpServletRequest request, HttpServletResponse response, Object obj, ModelAndView model) throws Exception {
    		System.out.println("Action运行之后,生成视图之前运行!!");
    	}
    
    	@Override
    	public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object obj) throws Exception {
    		System.out.println("action之前运行!

    !"); return true; // 继续运行action } }

    a)  preHandle

    该方法在action运行前运行。能够实现对数据的预处理。比方:编码、安全控制等。

    假设方法返回true,则继续运行action。

    b)  postHandle

    该方法在action运行后,生成视图前运行。在这里。我们有机会改动视图层数据。

    c)  afterCompletion

    最后运行。通经常使用于释放资源,处理异常。

    我们能够依据ex是否为空,来进行相关的异常处理。

    由于我们在平时处理异常时,都是从底层向上抛出异常。最后到了spring框架从而到了这种方法中。


    2. 继承适配器: HandleInterceptorAdapter

    public class MyInterceptor2 extends HandlerInterceptorAdapter {
    
    	@Override
    	public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
    		System.out.println("MyInterceptor2.preHandle()");
    		return true; // 继续运行action
    	}
    
    }

    3. 配置user-servlet.xml

    方案1:

    <!-- 配置自己定义拦截器 -->
    <mvc:interceptors>
    	<bean class="com.zdp.interceptor.MyInterceptor1"></bean> <!-- 拦截全部的url!

    --> </mvc:interceptors>

    方案2:

    <!-- 配置自己定义拦截器 -->
    <mvc:interceptors>
    	<mvc:interceptor>
    		<mvc:mapping path="/user/add" /> <!-- 仅仅拦截加入用户 -->
    		<bean class="com.zdp.interceptor.MyInterceptor2"></bean>
    	</mvc:interceptor>
    </mvc:interceptors>






  • 相关阅读:
    Android学习第一课
    窗体 dialog 弹出时动画效果
    poj2105 IP Address(简单题)
    #定位系统性能瓶颈# strace &amp; ltrace
    POJ2142——The Balance
    排序算法系列之八大排序算法性能比較-从实验结果分析
    DuFile网赚网盘
    一次dns缓存引发的惨案
    IT大咖说
    HTTPS与SNI扩展,一个IP绑定多个SSL证书 | VeriSign|SSL证书|数字签名证书|服务器证书|微软代码签名证书|Symantec
  • 原文地址:https://www.cnblogs.com/blfbuaa/p/6920333.html
Copyright © 2011-2022 走看看