首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

struts2入门(2)-知识总结

2012-11-01 
struts2入门(二)-知识总结在学了struts2的环境搭建和最基本的开发步骤后,再来总结一些知识点,以便更好地理

struts2入门(二)-知识总结

在学了struts2的环境搭建和最基本的开发步骤后,再来总结一些知识点,以便更好地理解(struts2基本开发步骤 见:http://lekihuo.iteye.com/blog/679103)

?

?一、关于struts.xml 配置文件

?

?

??? 1)package标记

??????? 在一对package标记中,可以配置多个action,实际应用中一般将有相似业务逻辑或者是同一个模块中的action配置在同一个package中,这跟Java代码中的package类似

??????? package属性介绍

????????1.name 必须的,其他包要继承该包,必须经过该属性进行引用
????????2.namespace 定义该包的命名空间,默认为“/”,命名空间做为访问该包下action路径的一部分,例如上面的action访问路径为:/a/b/hello
??????? 3. extends 默认继承了struts-default包,可使这个包下面默认应用了struts2一些新功能,如拦截器等
????????4.abstract 默认值为"fault",当 abstract=”true” 则该包内不能有action,struts-default.xml 就是这样的,该文件在struts2-core-2.0.12.jar

???? 2)include 标记

???????? 如果package、action、interceptors等配置比较多时,都放到一个struts.xml文件不太容易维护。因此,就需要将struts.xml文件分成多个配置文件,然后在struts.xml文件中使用< include>标签引用这些配置文件。这样做的优点如下:
?????? 结构更清晰,更容易维护配置信息,配置文件可以复用。

要注意一下,用< include>引用的xml文件也必须是完整的struts2的配置。实际上< include>在引用时是单独解析的xml文件,而不是将被引用的文件插入到struts.xml文件中。

???? 3)action 标记

????????? 一个Action可以配置多次(只要action配置中的name不同即可)

?????action的属性:

?????????name 我们给Action起的名称,url中要用

???????? class 这个没的说,Action类的路径,默认为ActionSupport

???????? method? 要调用的action中的方法名,默认为execute方法

???? 附:Struts2里Action名称的搜索顺序
???? 如:根据上面的配置,在地址栏输入 htpp://.......app/a/b/c/d/hello.action
在Struts2中,首先会按照命名空间规则,先查"/a/b/c/d"这个命名空间下有无hello,没有此action后,会在"/a/b/c"这个命名空间查,以此类推,直至"/a/b"下查到有该action。还有一点,如果在"/a/b"下还是无法查到该action,则会继续到"/a"下查,还是没有,则会查默认名称空间"/",要是还没有,则页面提示找不到action

?

???? 4)result 标记

?????????? 该标记用于配置跳转

?????result的属性

???????? name 默认值"success"

???????? type???转发类型,Struts2 中result常用的视图转发类型(dispatcher(默认)、redirect、redirectAction、plainText)

???? 注意:该标记指定的页面前如果不加"/",则表示相对路径。

???? 如上:把showHello.jsp前面的“/”去掉,则执行action后,会找/a/b/showHello.jsp

热点排行