springMVC映射器适配器配置
springMVC前端控制器收到请求时调用处理器映射器解析url地址,再根据url地址通过处理器适配器调用相应的handler(controller)。
下面简要说明一下处理器映射器跟处理器适配器的配置,分为注解跟非注解配置。
非注解配置:
非注解配置一:
<!--配置处理器映射器-->
<!-- 根据bean的name进行查找Handler 将controller的url配置在bean的name中 -->
<bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping" />
<!--配置处理器映射器-->
<bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"/>
两者配置完则还需要配置视图解析器,这里我们用的视图是jsp所以只配置一次,一下的配置则省略该步骤,但是视图解析器是必须要配置的。
<!--配置视图解析器-->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass" value="org.springframework.web.servlet.view.JstlView" />
<property name="prefix" value="/WEB-INF/jsp/" />
<property name="suffix" value=".jsp" />
</bean>
controller实现:
controller实现Controller接口并覆盖handleRequest方法,在配置文件中使用的配置为:
<bean name="/quary.action" class="com.linyitian.controller.Contrller"/>
name便是访问该controller的地址。
非注解配置二:
<!--配置处理器映射,通过集合参数指明controller的访问地址-->
<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/quary1.action">contrller1</prop>
</props>
</property>
</bean>
<!--配置处理器映射器-->
<bean class="org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter" />
controller实现:
controller实现HttpRequestHandler接口并覆盖handleRequest方法,在配置文件中使用的配置为:
<bean id="contrller1" class="com.linyitian.controller.Contrller1"/>
注解配置:
注解配置也分两种配置,第一种是springMVC2.5到3.1使用的,第二种是3.1以后使用的,明显3.1以后使用的版本是用更大的作用于功能的,但在这里两种都会提一下:
3.1以前使用的注解配置:
<!--配置处理器映射器-->
<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"/>
<!--配置处理器适配器-->
<bean class="oorg.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"/>
3.1以后使用的注解配置:
<!--配置处理器映射器-->
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/>
<!--配置处理器适配器-->
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"/>
值得注意的是:当使用注解的配置方式时,可以直接使用<mvc:annotation-driven>来代替以上的映射器和适配器注解配置,该配置除了加载以上两个之外还会加载更多的参数绑定方法。比如json转化解析器等等。

浙公网安备 33010602011771号