`

spring拦截器配置问题<mvc:annotation-driven/>

阅读更多
原始配置如下:
<mvc:annotation-driven />

<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping">
	<property name="interceptors">
		<list>
			<bean class="cn.com.songjy.interceptors.ResponseMessageConverter"></bean>
		</list>
	</property>
</bean>

<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
	<property name="customArgumentResolvers">
		<list>
			<bean class="cn.com.songjy.commons.MapArgumentResolver"></bean>
		</list>
	</property>
</bean>

<mvc:interceptors>
	<bean class="cn.com.songjy.interceptor.ParamValidateInterceptor"/>
	<mvc:interceptor>
		<!-- 表示符合/company/*这样的模式才拦截 -->
		<mvc:mapping path="/company/*" />
		<bean class="cn.com.songjy.interceptors.VisitInterceptor" />
	</mvc:interceptor>
</mvc:interceptors>


但是配置没有生效,参阅springMVC之annotation优化后可知出现的原因是当配置了<mvc:annotation-driven/>后,会自动加载org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping和org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter,所以如果显示的配置则需去掉配置<mvc:annotation-driven/>,最后的配置如下:
<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping">
	<property name="interceptors">
		<list>
			<bean class="cn.com.songjy.interceptors.ResponseMessageConverter"></bean>
		</list>
	</property>
</bean>

<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
	<property name="customArgumentResolvers">
		<list>
			<bean class="cn.com.songjy.commons.MapArgumentResolver"></bean>
		</list>
	</property>
</bean>

<mvc:interceptors>
	<bean class="cn.com.songjy.interceptor.ParamValidateInterceptor"/>
	<mvc:interceptor>
		<!-- 表示符合/company/*这样的模式才拦截 -->
		<mvc:mapping path="/company/*" />
		<bean class="cn.com.songjy.interceptors.VisitInterceptor" />
	</mvc:interceptor>
</mvc:interceptors>


DefaultAnnotationHandlerMapping

<mvc:annotation-driven>和DefaultAnnotationHandlerMapping 配置教训

SpringMVC拦截器简单使用

基于注解风格的Spring-MVC的拦截器

Spring3 MVC 深入研究

解决Spring MVC 对AOP不起作用的问题
分享到:
评论

相关推荐

    拦截器与冲突解决

    1. **配置顺序**:Spring MVC按照注册拦截器的顺序执行它们,如果`&lt;mvc:annotation-driven /&gt;`配置在拦截器之后,那么可能会导致拦截器无法正常工作,因为Spring可能已经处理了请求,而没有交给拦截器。 2. **命名...

    SPRING MVC3.2案例讲解---配置

    总的来说,Spring MVC 3.2的配置涉及多个方面,包括组件扫描、视图解析、注解驱动、拦截器、异常处理以及数据绑定等。通过合理的配置,我们可以构建出一个高效、灵活的Web应用框架。在实际项目中,应根据具体需求...

    java8+tomcat8+struts2.5+spring4.3+hibernate5.2框架搭建详细过程

    &lt;mvc:annotation-driven/&gt; &lt;bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; &lt;property name="prefix" value="/WEB-INF/views/"/&gt; &lt;property name="suffix" value=".jsp"/&gt; ...

    Spring3.0 MVC配置教程

    &lt;mvc:annotation-driven /&gt; &lt;bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; &lt;property name="prefix" value="/WEB-INF/views/" /&gt; &lt;property name="suffix" value=".jsp...

    Spring MVC入门教程

    个人认为相当适合入门和知识巩固!! 一、前言 二、spring mvc 核心类与接口 ...十九、 &lt;mvc:annotation-driven /&gt; 到底做了什么工作 二十、 本文中springMVC.xml配置文件是核心,这里给一个下载地址

    spring-mvc的简单实现

    &lt;mvc:annotation-driven /&gt; &lt;bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; &lt;property name="prefix" value="/WEB-INF/views/"/&gt; &lt;property name="suffix" value=".jsp"/&gt; ...

    Spring MVC 教程 快速入门 深入分析

    Spring MVC 教程 快速入门 深入分析 目录 一、前言 二、spring mvc 核心类与接口 三、spring mvc 核心流程图 四、spring mvc DispatcherServlet说明 ...十九、 &lt;mvc:annotation-driven /&gt; 到底做了什么工作

    spring mvc架构搭建,实现简单的查询用户查询功能

    在`springmvc-servlet.xml`中,我们将配置Spring MVC的组件,如视图解析器、拦截器和模型-视图-控制器(Controller): ```xml &lt;beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi=...

    spring mvc 框架搭建

    5. **创建Spring配置文件**:在`WEB-INF/spring/appServlet/`目录下创建`servlet-context.xml`,配置Spring MVC的相关组件,如视图解析器、模型-视图-适配器(MVC配置)、拦截器等。例如: ```xml &lt;beans xmlns=...

    Spring MVC入门实例

    Spring MVC 提供了多种高级特性,如拦截器(Interceptor)、数据绑定、表单验证、国际化等。随着对框架的深入理解,可以实现更复杂的业务需求。 总结,Spring MVC 作为Java Web开发的强大工具,通过这个简单的入门...

    Spring MVC Controller配置方式

    在 XML 配置中,`&lt;context:component-scan&gt;` 用于扫描包含 @Controller 的类,而 `&lt;mvc:annotation-driven&gt;` 表示启用注解驱动的 MVC 功能。 三、组合使用注解和 XML 配置 在实际开发中,有时可能需要同时使用注解...

    IDEA 搭建Spring MVC环境示例二

    &lt;mvc:annotation-driven/&gt; ``` 5. **创建Controller**: - 在`com.example.springmvcexample.controller`包下创建一个新的Java类,如`HelloWorldController.java`。 - 在这个类中,使用`@Controller`注解标记它...

    Spring MVC HelloWorld入门例子

    Spring MVC 是一个基于 Java 的轻量级 Web 开发框架,它是 Spring 框架的重要组成...随着你对 Spring MVC 更深入的学习,你会接触到更多高级特性,如拦截器、模型绑定、异常处理等,这些都是构建复杂 Web 应用的基础。

    Spring MVC 学习笔记 一 创建项目

    更多关于Spring MVC的高级特性,如拦截器、AOP、MVC注解、数据绑定等,将在后续的学习笔记中逐步展开。参考提供的博文链接(https://starscream.iteye.com/blog/1057305)可以获取更多详细信息和实战案例。

    spring springmvc jpa配置文件

    &lt;mvc:annotation-driven/&gt; &lt;!-- 定义控制器 --&gt; &lt;bean class="com.example.MyController"/&gt; &lt;/beans&gt; ``` 最后,我们来看JPA的配置。JPA通过Hibernate等ORM框架实现,使得Java对象可以直接映射到数据库表。在...

    spring mvc基础

    Spring MVC配置文件主要用于配置Spring MVC的各个组件,例如视图解析器、拦截器、异常处理器等。 ```xml &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;beans xmlns="http://www.springframework.org/schema/beans"...

    SpringMVC 配置 最简单的MAVEN hello world

    &lt;mvc:annotation-driven /&gt; &lt;bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; &lt;property name="prefix" value="/WEB-INF/views/" /&gt; &lt;property name="suffix" value=".jsp" ...

    IDEASSM框架实战CRUDSSM整合配置MyBatis逆向工程.docx

    该文件用于配置Spring MVC的核心组件,包括视图解析器、拦截器等。 ```xml &lt;beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context=...

    springmvc+mybatis+oracle

    &lt;mvc:annotation-driven /&gt; &lt;!-- 扫描Controller所在的包 --&gt; &lt;context:component-scan base-package="com.example.controller" /&gt; &lt;!-- 自定义拦截器配置 --&gt; &lt;mvc:interceptors&gt; &lt;bean class=...

    Spring的MVC 入门小例子,用到了注解驱动

    在这个配置中,`&lt;context:component-scan&gt;`扫描指定包下的注解组件,`&lt;mvc:annotation-driven/&gt;`启用注解驱动的MVC功能。 通过以上讲解,你应该对Spring MVC的注解驱动有了初步的理解。这个入门小例子可以帮助你...

Global site tag (gtag.js) - Google Analytics