Spring MVC中<mvc:annotation-driven />和<context:annotation-config />的区别分析
个人最简单的使用理解:
<mvc:annotation-driven />是管理静态资源的,比如静态页面,返回JSON这些。
<context:annotation-config />是管理注解的,比如@Controller这些。
深入的解释:
官方文档:
https://spring.io/blog/2009/12/21/mvc-simplifications-in-spring-3-0/
https://docs.spring.io/spring/docs/3.0.x/spring-framework-reference/html/mvc.html#mvc-config
<mvc:annotation-driven />是在Spring 3.0中添加的标签,它执行以下操作:
- 配置Spring 3 Type ConversionService(PropertyEditors的替代方法)
- 添加对@NumberFormat格式化数字字段的支持
- 添加对@DateTimeFormat格式化日期,日历和Joda时间字段的支持,如果Joda Time在类路径上
- 如果JSR-303提供程序在类路径上,则添加对@Valid验证@Controller输入的支持
- 添加支持读写XML,如果JAXB在类路径(使用@RequestBody/@ResponseBody的HTTP消息转换)
- 添加对阅读和编写JSON的支持,如果Jackson位于类路径(与#5相同的行)
<context:annotation-config />在同一应用程序上下文中查找bean上的注释,并声明对@Autowired,@Resource,@Required,@PostConstruct等所有常规注释的支持。
题外说法(只测试了4.1.6的通过,其余版本没试过):
如果用了<context:component-scan />,其实<context:annotation-config />就可以不用了,默认前者已经提供了包的扫描功能和注解支持。
参考:
https://spring.io/blog/2009/12/21/mvc-simplifications-in-spring-3-0/
https://docs.spring.io/spring/docs/3.0.x/spring-framework-reference/html/mvc.html#mvc-config
https://scotch.io/@ethanmillar/spring-mvc-component-scan-annotation-config-annotation-driven
http://blog.csdn.net/blue_it/article/details/12612533
Spring MVC中<mvc:annotation-driven />和<context:annotation-config />的区别分析的更多相关文章
- Spring框架中<mvc:default-servlet-handler/>的作用
优雅REST风格的资源URL不希望带 .html 或 .do 等后缀.由于早期的Spring MVC不能很好地处理静态资源,所以在web.xml中配置DispatcherServlet的请求映射,往往 ...
- MVC中@Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction区别
Html.RenderPartial与Html.RenderAction这两个方法都是用来在界面上嵌入用户控件的. 1. Html.RenderPartial是直接将用户控件嵌入到界面上: <% ...
- 转载.Net MVC中Html.RenderPartial和Html.RenderAction 的应用与区别
Html.Partial方法:是将视图内容直接生成一个字符串并返回, Html.RenderPartial方法是直接输出至当前HttpContext, 而Html.RenderAction还调用一下A ...
- 在spring配置文件中引入外部properties配置文件 context:property-placeholder
在spring的配置文件中,有时我们需要注入很多属性值,这些属性全都写在spring的配置文件中的话,后期管理起来会非常麻烦.所以我们可以把某一类的属性抽取到一个外部配置文件中,使用时通用spring ...
- ASP.NET MVC中viewData、viewBag和templateData的使用与区别
一:类型比较 1.1)ViewBag是动态类型(dynamic). 1.2)ViewData是一个字典型的(Dictionary)-->ViewDataDictionary. 1.3)TempD ...
- 转载ASP.NET MVC 中@Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction区别
对这四个的区别做一个总结,清理一下思路,方便以后使用: 1.带有Render的方法返回值是void,在方法内部进行输出:不带的返回值类型为MvcHtmlString,所以只能这样使用: @Ht ...
- asp.net MVC 中@Html.Partial,@Html.Action,@Html.RenderPartial,@Html.RenderAction区别
@Html.Action:需要有对应的Action,并且Action方法有返回值.(注:处理完业务逻辑同时,也需要返回所需值) @{Html.RenderAction}:需要有对应的Action,Ac ...
- Spring MVC 中的基于注解的 Controller【转】
原文地址:http://my.oschina.net/abian/blog/128028 终于来到了基于注解的 Spring MVC 了.之前我们所讲到的 handler,需要根据 url 并通过 H ...
- Spring MVC中基于注解的 Controller
终于来到了基于注解的 Spring MVC 了.之前我们所讲到的 handler,需要根据 url 并通过 HandlerMapping 来映射出相应的 handler 并调用相应的方法以响 ...
随机推荐
- [Swift通天遁地]六、智能布局-(7)通过Group(组)命令实现对多个视图的统一约束
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- [Swift通天遁地]八、媒体与动画-(2)实现视频文件的播放和画中画
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- 慕课网3-10编程练习:简单的flex布局
小伙伴们,我们学习了伸缩容器的一些属性,接下来使用我们所学的伸缩容器属性完成下面的效果图. 完成效果: 任务 1.先将容器设置为伸缩容器 2.在垂直方向上对齐,行与行之间的空白距离一样 3.在水平方向 ...
- Python/Django 下载Excel2007
一.前提 上一篇,我写了下载Excel2003的博文,这里写下载Excel2007的博文的原因有三: 第一.Excel2003基本已经淘汰了 第二.Excel2003下载文件太大,不利于网络传输 第三 ...
- BZOJ 2506 分块
//By SiriusRen #include <bits/stdc++.h> using namespace std; ; ][],g[N],tmp=; struct Node{int ...
- 【USACO2002 Feb】奶牛自行车队
[USACO2002 Feb]奶牛自行车队 Time Limit: 1000 ms Memory Limit: 131072 KBytes Description N 头奶牛组队参加自行车赛.车队在比 ...
- 题解报告:hdu 1142 A Walk Through the Forest
题目链接:acm.hdu.edu.cn/showproblem.php?pid=1142 Problem Description Jimmy experiences a lot of stress a ...
- 5CSS之字体font-family
---------------------------------------------------------------------------------------------------- ...
- fresh_bank、、
最近新学习了一个bank系统来和大家分享一下,新人求罩! 破索式之_链子枪_ 废话不多说了直接本主题 如果我们要写出bank系统,就要先考虑这个问题:总共需要几个类? 既然是银行系统,那么必不可少的就 ...
- js post一个对象 在C#中怎么接收? 未解决
这个在C#中怎么接收?