Spring MVC 中关于 mvc:annotation-driven

来源:互联网 发布:mac珊瑚色口红是几号 编辑:程序博客网 时间:2024/04/30 01:34
<mvc:annotation-driven/>

会自动注册

RequestMappingHandlerMapping、
RequestMappingHandlerAdapter与ExceptionHandlerExceptionResolver三个benn。

还提供一下支持:

  • 支持使用ConversionService 实例对表单参数进行类型转换
  • 支持使用@NumberFormat annotation、@DateTimeFormat注解完成数据类型的格式化
  • 支持使用@Valid注解对JavaBean实例进行JSR303 验证
  • 支持使用@RequestBody 和 @ResponseBody注解 这个是 Ajax用到的

这里写图片描述

可以在jar包自带的帮助文档看,整理出来就是开头讲的那几个bean。

开始的时候,我们的ConversionService是这样的。

这里写图片描述

我们去掉conversion-service的配置,debug可以看到。
这里写图片描述

这个时候看handlerAdapter。有三个。
这里写图片描述

都注掉,看效果。

这里写图片描述

这里写图片描述

看HandlerAdapter。

这里写图片描述

按照这个断点查看查看源码,就基本懂了这儿mvc:annotation-driven基本是不可或缺,所以我们做项目的时候都要把它配上,已经用到了它的三个功能:
1. 配直接跳转的时候,需要这个配置RequestMapping才继续起作用。
2. 配找到静态资源文件的时候,需要这个RequestMapping才继续起作用。
3. 配ConversionService的时候,需要在这里面加上。才能进行自定义类型转换。

0 1