您的位置:首页 > 移动开发

springmvc Handler HandlerMapping HandlerAdapter的配置方式

2015-08-13 11:45 309 查看
springmvc.xml都要配置handler handlerMapping  handlerAdaptcher。</span>
一:首先 最简单的配置,但是不好用,不是注解的方式
<!-- 配置Handler -->
<bean  name="/user.action" class="com.dxoa.controller.UserController" />  这是两个handler的配置
<bean  name="/test.action" class="com.dxoa.controller.TestController" />
<!-- 配置handlerMapping 通过handdler的name来查找具体的handler-->
<bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping" />
<!--  配置handlerAdapter 执行handler,此配置,所写的handler需要遵循一定的规则,即需要实现Controller,
这样处理器适配器就能找到并执行handler了,但是实现了Controller接口之后,就只有ModelAndView一个方法,这是极大地弊端。-->
<bean  class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"/>

二:采用注解的方式(常用的)
<!-- 使用注解的方式 可以扫描controller、service、...
这里让扫描controller,指定controller的包-->
<!-- 配置handler-->
<context:component-scan base-package="com.dxoa.controller"></context:component-scan>
<!--注解映射器 -->
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/>
<!-- 注解适配器 -->
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"/>

三:使用 mvc:annotation-driven代替上边注解映射器和注解适配器配置	mvc:annotation-driven默认加载很多的参数绑定方法,
比如json转换解析器就默认加载了,如果使用mvc:annotation-driven不用配置上边的RequestMappingHandlerMapping和RequestMappingHandlerAdapter
实际开发时使用mvc:annotation-driven。

<!-- 配置handler-->
<context:component-scan base-package="com.dxoa.controller"></context:component-scan>
<!-- 注解映射器和注解适配器 都可以用的 -->
<mvc:annotation-driven></mvc:annotation-driven>

web.xml的配置:

<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>

<servlet>
<servlet-name>springmvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springmvc.xml</param-value>
</init-param>
</servlet>

<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>*.action</url-pattern>
</servlet-mapping>



                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: