- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
深入spring mvc framework之总体分析(深入Spring MVC框架之总体分析)
深入spring mvc framework之总体分析(深入Spring MVC框架之总体分析)
深入Spring MVC框架之总体分析
在当今的MVC框架里,似乎WebWork2逐渐成为主流,webwork2 + SpringFramework的组合变得越来越流行。这似乎意味着弹簧自带的MVC框架远比WebWork2差,所以大家纷纷用WebWork2来代替。确实,春天的MVC框架不算是整个弹簧的核心部件,但它的威力却超过了很多人的想象。很多人包括xiecc认为弹簧的MVC框架是非常优秀的,甚至比WebWork2更优秀。
下面列举一下弹簧的在设计时做出的一些重要的决定并将之和相关的MVC框架,MVC框架Struts进行对比如WebWork2或:
一、弹簧的整个MVC配置是基于奥委会容器的
与Struts或WebWork2相比,这是一个MS有点奇怪的决定,看一下Spring MVC的配置文件,最先看到的不是行动或者形式,而是一些有着特定名字的豆,豆下面的配置是一些简单或有点复杂的属性我们看到的是机器更容易的数据结构,而不是人更容易理解的元素。
但是这恰恰是弹簧的MVC强大的根源!因为它的配置就是弹簧的核心奥委会容器的配置,这意味着所有奥委会容器的威力都可以在这里展现,我们可以为所欲为地对Spring MVC进行扩展和增强,我们可以完成在其它MVC框架中很多难以想象的任务。想扩展新的URL映射方式吗?要换一个themeresolver或localreolver的实现吗?想在页面中显示新类型的视图(比如说RDF,呵呵,一个小秘密:xiecc是研究语义网的,虽然成天不务正业,不写论文,只写八卦)?甚至想直接在控制器里定义AOP吗?这些对弹簧的MVC来说都是小菜一碟。
我没有仔细研究过WebWork2的扩展机制,我知道通过WebWork2的拦截机制,可以进行很多的扩展,甚至有一个简单简单的奥委会容器。但不管它有多强大,提供了多少扩展点。它的威力都很难和真正的奥委会容器相比。而Struts的功能则是出名的滥虽然它也提供了插件,插件机制。
春天采用奥委会配置的另一个原因是使弹簧的MVC与弹簧的奥委会容器的整合变得非常的容易。春天提供了与Struts与WebWork2的整合,但是这样整合都需要在进行间接的包装,感觉总不是很自然。而且还会导致一个概念多个配置,webwork2就需要在弹簧里配置豆,再配置自己的XWork文件。想象一下吧,我们的豆直接就是一个控制器,直接可以完成MVC的所有任务,这是多少爽的感觉。
Rod Johnson采用奥委会容器来实现的另一个原因是这会减少好多开发工作量。看一下urlmapping吧,它提供的财产本身就是一个HashMap,只有配置完成,我们的豆里的数据就自然存在了,哈哈,好爽吧。不用象Struts那样解析XML,再把它的内容一项一项地读到HashMap里。
虽然这样的配置会有点怪异,但假如我们对弹簧的奥委会容器非常熟悉的话,会发现它非常的亲切,也非常的简单。
最后是一个简单的小秘密,春天怎么知道某个豆的配置就是urlmapping?另一个的配置就是ViewResolver豆?其实很简单,把所有的豆全部读到内存里,然后通过豆的名字或类型去找就行了。通过名字去找就是简单的getBean方法,通过类型去找则使用了beanfactoryutils beansoftypeincludingancestors的静态方法。
二、弹簧提供了明确的模型、视图概念和相应的数据结构
在弹簧里有一个有趣的数据类型叫做ModelAndView,它只是简单地把要显示的数据和显示的结果封装在一个类里。但是它却提供了明确的MVC概念,尤其是模型概念的强化,使程序的逻辑变得更清晰了。
记得以前在Struts里写程序里的时候,为了显示数据经常自己把东西放到HttpSession或HttpServletRequest里(或集到形式里,虽然不太有用),这造成了模型概念的模糊,
It also leads to tight coupling between struts and JSP pages. If we want to replace Veloctiy, we have to add another plugin, because in velocity, the data does not need to be left in the request.
Webwork2 emphasizes the simplicity of decoupling with Web framework and its command schema, so there is only a simple get or set method in its ac
您可能关注的文档
- 武汉佛香缘科技开发有限公司介绍佛教发展篇(Wuhan foxiangyuan Technology Development Co., Ltd. introduced the development of Buddhism).doc
- 武汉出发去凤凰旅游攻略(Wuhan to Phoenix travel Raiders).doc
- 武功苏氏与苏坊村[中国 武功](Wugong, Su and Su Fang Cun [Chinese martial arts]).doc
- 武汉国电西高电气有限公司(Wuhan Guodian West High Electric Co., Ltd.).doc
- 武汉大学电气工程学院研究生考试复试内部资料1(Wuhan University Electrical Engineering Institute graduate examination retest internal information 1).doc
- 武汉工业学院工商学院义务助学社章程(Charter of compulsory education institution of Business School of Wuhan Polytechnic University).doc
- 武汉市各区高中(Wuhan District high school).doc
- 正逢世界杯盛事(At the World Cup event).doc
- 武汉理工大学《数值模拟》复习资料(Wuhan University of Technology numerical simulation review information).doc
- 母恩深似海催人泪下的母爱故事(Mother the love story Enshensihai copy from rolia).doc
- 深入贯彻落实科学发展观需要进一步牢固树立正确的政绩观(To further implement the Scientific Outlook on Development, we need to firmly establish a correct view of achievements).doc
- 深刻认识依法治理的历史必然(A profound understanding of the historical necessity of administering according to law).doc
- 深化细微服务提升酒店管理水平(Deepening fine service to improve hotel management level).doc
- 深发展去年净利润62_83亿 多家公司公布业绩 _ 财经频道 _ 东方财富网(eastmoney_com)(Shenzhen Development announced last year net profit of 62_83 billion in the performance of the company _ financial channel _ eastmoney.com (eastmoney_com)).doc
- 深圳二手房评估价征税7月11日实行(Shenzhen second-hand housing assessment price tax imposed in July 11th).doc
- 深圳好玩的地方(A fun place in Shenzhen).doc
- 深入浅出工厂模式(Factory model).doc
- 深圳宝安文化产业打造五大集群 创意设计产业居首(Shenzhen Baoan cultural industry to build five major clusters of creative design industry.).doc
- 深化行政执法体制改革(Deepening the reform of administrative law enforcement system).doc
- 深圳推广告语(Shenzhen promotion Report).doc
文档评论(0)