- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
深入探讨Struts的核心概念.doc
深入探讨Struts2的核心概念
1 术语概述
????????? Action在Struts2中是负责Web应用程序中具体逻辑实现的。Action是一个Java类,一般的继承于com.opensymphony.xwork.ActionSupport类,这个类在Struts2的Dispatcher接受到HTTP请求的时候被调用。
????????? 当一个action执行完毕之后,它将返回一个返回码,譬如“SUCCESS”“INPUT”或者其他“返回代码”。这些“返回代码”通过查找struts.xml中的定义告诉Struts2下一步该做什么而这个下一步就称为result。Struts2 支持许多种不同的result类型,比如返回结果页面给用户。可选择的显示模板技术有JSP、Velocity或者是FreeMarker。
2 Struts2的体系结构
????????? Struts2的核心体系结构如图5.1所示。用户在Struts2框架下只需编写自己的Action类来处理逻辑、编写JSP页面(或者其他方式)来展示用户界面和在struts.xml配置映射关系就可以完成基本的业务流程。
?
3 Struts2的配置文件
????????? Struts2框架主要有两个核心配置文件:perties和struts.xml。struts.xml与Struts1版本中的struts-config.xml非常类似,主要负责管理应用中的Action映射,以及该Action包含的Result定义等,而perties文件则定义了Struts2框架的全局属性。所有的配置文件说明见表所示,图展示了几个配置文件所在位置和相互关系。
?
?
3.1 全局配置文件--perties
????????? perties文件是一个标准的Properties文件,该文件包含了系列的key-value对象,每个key就是一个Struts2属性,该key对应的value就是一个Struts2属性值。perties文件通常放在Web应用的WEB-INF/classes路径下,实际上,只要将该文件放在Web应用的CLASSPATH路径下,Struts2框架就可以加载该文件。以下是一部分配置片段。
????????? struts.enable.DynamicMethodInvocation=false
????????? struts.devMode=false
3.2 核心配置文件--struts.xml
????????? struts.xml文件主要负责管理应用中的action映射,以及该action包含的result定义等。在perties配置中的有一项struts.configuration.files,这里可以看出struts.xml这个文件名不一定是固定的,可以配置为其他文件名的。struts.xml内容主要包括:Action、Interceptor、Packages、Namespace等。后面的章节将详细介绍如何配置这些元素。
????????? 在struts.xml中可以使用include标签把内容分到几个文件中去。这里非常像JSP中的jsp:include动作标签,可以把其他文件的内容导入进来,被导入的每个配置文件必须和struts.xml文件有一样的格式。include标签的格式如下所示。
3.3 struts.xml的缺省实现
????????? struts-default.xml这个文件被包含在struts2-core.jar中,文件名已经可以看出这个文件的作用是struts.xml的缺省配置,它将自动被加载然后导入到struts.xml中去。代码5-1是struts-default.xml的部分片段。
3.4 Velocity模板规则文件
????????? 如果在程序中使用了Velocity(一个基于java的模板引擎,可以替代JSP作为显示页面)可以把文件perties放到classpath中去,系统将自动加载。同时还要配置struts-default.vm文件,
????????? 代码 perties
????????? # Velocity 资源定义.
????????? velocimacro.library = action-default.vm, tigris-macros.vm, myapp.vm
4 struts.xml的配置
????????? Struts2绝大多数的配置都是在struts.xml中完成的,学习struts.xml文件是学习使用struts2的基础。本节将详细讲述如何在struts.xml中定义和配置各种元素。
4.1 action配置
????????? action是Stru
文档评论(0)