- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Struts1与Struts2的特点与比较
Struts1与Struts2的特点与比较
Struts1与Struts2的特点与比较
一.MVC的特点:
— 多个视图可以对应一个模型。按MVC设计模式,一个模型对应多个视图,可以减少代码的复制及代码的维护量,一旦模型发生改变,也易于维护。
— 模型返回的数据与显示逻辑分离。模型数据可以应用任何的显示技术,例如,使用JSP页面、Velocity模板或者直接产生Excel文档等。
— 应用被分隔为三层,降低了各层之间的耦合,提供了应用的可扩展性。
— 控制层的概念也很有效,由于它把不同的模型和不同的视图组合在一起,完成不同的请求。因此,控制层可以说是包含了用户请求权限的概念。
— MVC更符合软件工程化管理的精神。不同的层各司其职,每一层的组件具有相同的特征,有利于通过工程化和工具化产生管理程序代码。
二.Struts1的特点
Struts 1以ActionServlet作为核心控制器,由ActionServlet负责拦截用户的所有请求。Struts 1框架有3个重要组成部分:Action、ActionForm和ActionForward对象。
ActionForm必须实现ActionForm的基类,设计上并不是真正的POJO
ActionForward就是一个逻辑视图,通过在配置文件中定义ActionFoward的映射,完成逻辑视图名和实际视图资源之间的映射
Struts 1的Action类与Struts 2的Action类有一定的类似性,都通过调用execute方法来处理用户请求。但最大的区别在于Struts 1 Action的execute方法与Servlet API耦合(ActionServlet继承自HttpServlet),但Struts 2 Action类的execute方法无需与Servlet API耦合。
struts1的缺陷:
(1).只支持JSP作为表现层技术,不能与Velocity,FreeMarker等技术整合
(2).与Servlet API严重耦合,难于测试
一个exute有四个参数ActionMapping、ActionForm、HttpServletRequest和HttpServletResponse,初始化困难.
(3).侵入式设计,严重依赖于Struts1API,如如ActionMapping、ActionForm和ActionForward类.一旦系统需要重构时,这些类完全没有利用价值,导致较低的代码复用.
三.Struts2的特点
struts2核心控制器:FilterDispatcher
Struts 2用于处理用户请求的Action实例,并不是用户实现的业务控制器,而是Action代理——因为用户实现的业务控制器并没有与Servlet API耦合,显然无法处理用户请求。而Struts 2框架提供了系列拦截器,该系列拦截器负责将HttpServletRequest请求中的请求参数解析出来,传入到Action中,并回调Action的execute方法来处理用户请求。显然,上面的处理过程是典型的AOP(面向切面编程)处理方式。
Struts2 Action有以下特点:
— Action类完全是一个POJO,因此具有很好的代码复用性。
— Action类无需与Servlet API耦合,因此进行单元测试非常简单。
— Action类的execute方法仅返回一个字符串作为处理结果,该处理结果可映射到任何的视图,甚至是另一个Action。
Struts 2的配置文件有两份:
—配置Action的struts.xml文件。
—配置Struts 2全局属性的perties文件。
下面是struts.xml配置文件的示例:
Xml代码
struts
!-- Struts 2的Action都必须配置在package里 --
package name=default extends=struts-default
!-- 定义一个Logon的Action,实现类为lee.Logon --
action name=Logon class=lee.Logon
!-- 配置Action返回input时转入/pages/Logon.jsp页面 --
result name=input/pages/Logon.jsp/result
!-- 配置Action返回cancel时重定向到Welcome的Action--
result name=cancel type=redirect-actionWelcome/result
!-- 配置Ac
您可能关注的文档
- Redis资料汇总专题.doc
- regedit注册表编辑器的意义.doc
- REG注册表添加.doc
- RESOURCE、DBA角色与UNLIMITED TABLESPACE权限关系.doc
- Resin中JSP的范例.doc
- RF射频电路设计.doc
- RHEL 5 NTP同步配置.doc
- rlcrp详解.doc
- RM电影制作一点通.doc
- Robert van der Hilst罗伯特·凡·德·休斯特:色彩没有办法解释.doc
- 密室逃脱行业2025:剧情创新与团队合作精神培养研究.docx
- 工业互联网边缘计算节点在2025年智能化部署策略研究报告.docx
- 工业机器人智能化改造关键技术深度解析及2025年行业应用前景报告.docx
- 密室逃脱恐怖主题游戏市场细分用户群体心理画像分析报告.docx
- 密室逃脱恐怖元素用户满意度与行业竞争力研究.docx
- 工业机器人智能化改造关键技术标准制定与实施效果分析报告.docx
- 工业机器人维修保养连锁服务行业政策法规与合规性研究.docx
- 密室逃脱剧情创新设计在2025年的市场潜力评估.docx
- 少儿编程教育平台在2025年儿童编程思维培养中的应用研究.docx
- 工业机器人智能化改造关键技术突破与2025年产业布局报告.docx
最近下载
- 企业采购管理蔬菜采购验收标准DOC56页.pdf VIP
- 2025年云南省中考物理试题卷(含答案解析).docx
- 体温测量软件GBT 25000.51-2016自测报告.docx VIP
- WS∕T 225-2024 临床化学检验血液标本的采集与处理.pdf
- 信息系统的使用与维护管理办法.doc VIP
- 环境影响评价报告公示大理州永平县汽车客运站环境影响评价报告表环评报告.doc VIP
- 2022年1月广东自考《07114现代物流学》试题和答案 .pdf VIP
- Unit 1 Happy Holiday(大单元教学设计)英语人教版2025八年级上册.pdf
- 2025年军队文职人员公开招录《管理学》真题库(含答案).pdf VIP
- 网络数据安全检查项及检查方法.docx VIP
文档评论(0)