SpringMVC中的mvc:interceptors标签装备拦截器ITeye - 众发娱乐

SpringMVC中的mvc:interceptors标签装备拦截器ITeye

2019年03月13日08时36分40秒 | 作者: 冬萱 | 标签: 装备,阻拦,能够 | 浏览: 1228

这个标签用于注册一个自界说阻拦器或者是WebRequestInterceptors.

能够经过界说URL来进行途径恳求阻拦,能够做到较为细粒度的阻拦操控。

例如在装备文件参加

 ?xml version="1.0" encoding="UTF-8"? 
 beans xmlns="http://www.springframework.org/schema/beans"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd" 
 ! 以下装备将阻拦一切的URL恳求  
 mvc:interceptors 
 bean / 
 /mvc:interceptors 
 ! 以下装备将阻拦特有的URL恳求  
 mvc:interceptors 
 mvc:interceptor 
 mvc:mapping path="/secure/*"/ 
 bean / 
 /mvc:interceptor 
 mvc:interceptor 
 mvc:mapping path="/admin/*.do"/ 
 bean / 
 /mvc:interceptor 
 /mvc:interceptors 
 /beans 

Spring为咱们供给了org.springframework.web.servlet.handler.HandlerInterceptorAdapter这个适配器,承继此类,能够十分便利的完成自己的阻拦器。他有三个办法:

public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) 
 throws Exception { 
 return true; 
 public void postHandle( 
 HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) 
 throws Exception { 
 public void afterCompletion( 
 HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) 
 throws Exception { 
 } 

 别离完成预处理、后处理(调用了Service并回来ModelAndView,但未进行页面烘托)、回来处理(现已烘托了页面)
在preHandle中,能够进行编码、安全操控等处理;
在postHandle中,有时机修正ModelAndView;
在afterCompletion中,能够依据ex是否为null判别是否发生了反常,进行日志记载。

假如根据xml装备运用Spring MVC,
能够运用SimpleUrlHandlerMapping、BeanNameUrlHandlerMapping进行Url映射(相当于struts的path映射)和阻拦恳求(注入interceptors),
假如根据注解运用Spring MVC,能够运用DefaultAnnotationHandlerMapping注入interceptors。
留意不管根据xml仍是根据注解,HandlerMapping bean都是需要在xml中装备的。

版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表众发娱乐立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章