转自:https://my.oschina.net/u/1156626/blog/881483

mvc:annotation-driven的作用

Spring 3.0.x中使用了mvc:annotation-driven后,默认会帮我们注册默认处理请求,参数和返回值的类,其中最主要的两个类:DefaultAnnotationHandlerMapping 和 AnnotationMethodHandlerAdapter ,分别为HandlerMapping的实现类和HandlerAdapter的实现类,从3.1.x版本开始对应实现类改为了RequestMappingHandlerMapping和RequestMappingHandlerAdapter。

HandlerMapping的实现类的作用

实现类RequestMappingHandlerMapping,它会处理@RequestMapping 注解,并将其注册到请求映射表中。

HandlerAdapter的实现类的作用

实现类RequestMappingHandlerAdapter,则是处理请求的适配器,确定调用哪个类的哪个方法,并且构造方法参数,返回值。

当配置了mvc:annotation-driven/后,Spring就知道了我们启用注解驱动。然后Spring通过context:component-scan/标签的配置,会自动为我们将扫描到的@Component,@Controller@Service,@Repository等注解标记的组件注册到工厂中,来处理我们的请求。

<mvc:annotation-driven />的可选配置

 
<mvc: annotation-driven  message-codes-resolver="bean name" validator="bean name" conversion-service="bean name" ignoreDefaultModelOnRedirect="true or false">

    <mvc:message-converters>
<bean></bean>
</mvc:message-converters> <mvc:argument-resolvers>
<bean></bean>
</mvc:argument-resolvers> <mvc:return-value-handlers>
<bean></bean>
</mvc:return-value-handlers> </mvc:annotation-driven>

mvc:annotation-driven的作用

Spring 3.0.x中使用了mvc:annotation-driven后,默认会帮我们注册默认处理请求,参数和返回值的类,其中最主要的两个类:DefaultAnnotationHandlerMapping 和 AnnotationMethodHandlerAdapter ,分别为HandlerMapping的实现类和HandlerAdapter的实现类,从3.1.x版本开始对应实现类改为了RequestMappingHandlerMapping和RequestMappingHandlerAdapter。

HandlerMapping的实现类的作用

实现类RequestMappingHandlerMapping,它会处理@RequestMapping 注解,并将其注册到请求映射表中。

HandlerAdapter的实现类的作用

实现类RequestMappingHandlerAdapter,则是处理请求的适配器,确定调用哪个类的哪个方法,并且构造方法参数,返回值。

当配置了mvc:annotation-driven/后,Spring就知道了我们启用注解驱动。然后Spring通过context:component-scan/标签的配置,会自动为我们将扫描到的@Component,@Controller@Service,@Repository等注解标记的组件注册到工厂中,来处理我们的请求。

<mvc:annotation-driven />的可选配置

<mvc: annotation-driven  message-codes-resolver="bean name" validator="bean name" conversion-service="bean name" ignoreDefaultModelOnRedirect="true or false">

    <mvc:message-converters>
<bean></bean>
</mvc:message-converters> <mvc:argument-resolvers>
<bean></bean>
</mvc:argument-resolvers> <mvc:return-value-handlers>
<bean></bean>
</mvc:return-value-handlers> </mvc:annotation-driven>
 

最新文章

  1. 界面设计技法之css布局
  2. 来自XP的道别信
  3. 每天一个 Linux 命令(17):whereis 命令
  4. ros问题总结
  5. HTTP2.0介绍
  6. LoadRunner参数化之数据生成方式
  7. MyBatis学习---使用MyBatis_Generator生成Dto、Dao、Mapping
  8. [PHP100] PHP如何防止注入及开发安全
  9. lua语言入门之Sublime Text设置lua的Build System
  10. Visual Studio动态代码生成的实现基础
  11. 分享一个用安卓手机就能引导pc安装linux系统办法
  12. Raid5两块硬盘掉线可以恢复数据吗_raid数据恢复案例分享
  13. 简单的纯js三级联动
  14. Vue.js——60分钟快速入门(转载)
  15. 神州数码多区域OSPF配置
  16. 【读书笔记】iOS-基带攻击
  17. Hadoop-2.3.0的Eclipse插件编译
  18. C# fileUpload视频上传
  19. 大家所说的full-stack框架到底是指什么?
  20. 绝对路径${pageContext.request.contextPath}用法及其与web.xml中Servlet的url-pattern匹配过程

热门文章

  1. LeetCode(59)SPiral Matrix II
  2. 接口测试工具-fiddler的运用
  3. python gdal库安装
  4. 九度oj 题目1056:最大公约数
  5. [1143] [CTSC2008]祭祀river(最大独立集 || 偏序集最大反链)
  6. 【ZZ】神与学霸的区别
  7. tyvj1031 热浪
  8. easyUI pagination分页控件点击下一页后跳转到最后一页
  9. Linux下汇编语言学习笔记23 ---
  10. Spring中通过java的@Valid注解和@ControllerAdvice实现全局异常处理。