SpingMVC中的三种HandlerMapping(映射器)
来源:互联网 发布:淘宝 无人机 编辑:程序博客网 时间:2024/05/11 10:42
在spring mvc 框架中我们可以使用三种url mapping的控制器
(1)BeanNameUrlHandlerMapping 默认控制器,方式是将表现层的url和bean name绑定在一起
(2)SimpleUrlHandlerMapping 通过properties形式配置url mapping和controller的映射
(3)CommonsHandlerMappingy 使用元数据的方式
DispatcherServlet要将一个请求交给哪个特定的Controller,它需要咨询一个Bean——这个Bean的名字为“HandlerMapping”。
HandlerMapping是把一个URL指定到一个Controller上,(就像应用系统的web.xml文件使用将URL映射到servlet)。
Spring带有三种HandlerMapping,(SpringMVC中的所有HandlerMapping都实现了接口org.springframework.web.servlet. HandlerMapping)。
1、BeanNameUrlHandlerMapping
这是Dispatcher Servlet的默认的HandlerMapping,所以在应用上下文配置文件中简单地用“Url样式”来定义一个控制器Bean的名字,就可以告诉Dispatcher Servlet什么样式的请求应该由哪个控制器去处理,而不用显式地定义一个HandlerMapping。(私下说一句,这样做虽然简单,但这样用URL样式定义出来的ControllerBean,其名字显得古怪,因为这个名字同时也是Controller Bean的实例名)
例:若控制器ListCoursesController的URL样式是“listCourses.go”,则
<bean name="/listCourses.go"
class="com.w3cs.vlar.ListCoursesController">
<property name="couseService">
<ref bean="courceService"/>
property>
bean>
当然,也可以在定义这个控制器Bean之前,显式地声明你所用的HandlerMapping,显式定义如下:
<bean id="beanNameUrlMapping"
class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping">
2、SimpleUrlHandlerMapping
这种方式不同于BeanNameUrlHandlerMapping,SimpleUrlHandlerMapping不需定义Controller Bean的名字,而是直接把URL映射到控制器。
由于SimpleUrlHandlerMapping不是Dispatcher Servlet默认的HandlerMapping,所以这个HandlerMapping必须得显式定义。
下面定义了一个ID为“SimpleUrl”的HandlerMapping Bean:
<bean id="simpleUrlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/listCourses.go">listCoursesControllerprop>
<prop key="/login.go">loginControllerprop>
props>
property>
bean>
解释:
1)、SimpleUrlHandlerMapping中,用装配了一个名为mappings的java.util.Properties。
2)、元素的key属性是URL样式,而的值是处理这个URL的控制器Bean的名字。(而在BeanNameUrlMapping中的那个古怪的名字是控制器Bean的实例名)。
3、CommonsPathMapHandlerMapping
这个处理器使用控制器代码中的元数据将控制器映射到URL。
- SpingMVC中的三种HandlerMapping(映射器)
- SpingMVC中的HandlerMapping
- SpingMVC中的HandlerMapping
- springmvc三种处理器映射器handlerMapping
- springmvc—handlermapping三种映射
- springmvc—handlermapping三种映射
- SpringMVC中的处理器映射(handlerMapping)
- SpingMVC模块常用几种handlerMapping的初始化过程
- SpringMVC三种handlerMapping配置
- springMVC--4种映射处理器handlerMapping
- spingMVC模块handlerMapping的初始化过程
- spingMVC模块handlerMapping的初始化过程
- SpringMVC学习笔记(三):handlerMapping的三种方式及Controller三种配置
- 处理器映射HandlerMapping
- Spring MVC处理器映射(handlerMapping)
- Spring MVC中的HandlerMapping
- Spring MVC中的HandlerMapping
- Spring MVC中的HandlerMapping
- Web.Config和Sql Server2005连接字符串总结
- JAVA查询Oracle数据库导出成txt文本
- ubuntu11.04 编译ffmpeg2.7 并生成 ffplay进行流媒体测试
- ABBYY FineReader 12中条码检测不到怎么办
- 如何查看mysql运行、访问记录等日志
- SpingMVC中的三种HandlerMapping(映射器)
- html之 《meta》设置缓存
- sybase 优化总结
- 提交表单时的中文乱码问题
- php-app接口实现(json和xml)
- vmware虚拟机NAT通信方式配置
- kvm(1)之快速使用
- MySQL索引类型
- Agri-Net POJ 1258 【Prim】