欢迎来到天天文库
浏览记录
ID:1970450
大小:38.50 KB
页数:6页
时间:2017-11-14
《struts2教程3:struts.xml常用配置解析》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、使用<include>标签重用配置文件 在Struts2中提供了一个默认的struts.xml文件,但如果package、action、interceptors等配置比较多时,都放到一个struts.xml文件不太容易维护。因此,就需要将struts.xml文件分成多个配置文件,然后在struts.xml文件中使用<include>标签引用这些配置文件。这样做的优点如下: 结构更清晰,更容易维护配置信息。 配置文件可以复用。如果在多个Web程序中都使用类似或相同的配置文件,那么可以使用<include>标签来引用这些配置文件,这样可以减少工作量。 假设
2、有一个配置文件,文件名为newstruts.xml,代码如下:<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEstrutsPUBLIC"-//ApacheSoftwareFoundation//DTDStrutsConfiguration2.0//EN""http://struts.apache.org/dtds/struts-2.0.dtd"><struts><packagename="demo"extends="struts-default"><actionname="submit" class="action.MoreS
3、ubmitAction"><resultname="save">/result.jsp</result><resultname="print">/result.jsp</result></action></package></struts> 则struts.xml引用newstruts.xml文件的代码如下:<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEstrutsPUBLIC"-//ApacheSoftwareFoundation//DTDStrutsConfiguration2.0//EN""http://strut
4、s.apache.org/dtds/struts-2.0.dtd"><struts><includefile="newstruts.xml"/><packagename="test"extends="struts-default">……</package></struts> 大家要注意一下,用<include>引用的xml文件也必须是完成的struts2的配置。实际上<include>在引用时是单独解析的xml文件,而不是将被引用的文件插入到struts.xml文件中。 action的别名 在默认情况下,Struts2会调用动作类的execute方法。但有
5、些时候,我们需要在一个动作类中处理不同的动作。也就是用户请求不同的动作时,执行动作类中的不同的方法。为了达到这个目的,可以在<action>标签中通过method方法指定要指行的动作类的方法名,并且需要为不同的动作起不同的名子(也称为别名)。如下面代码所示:<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEstrutsPUBLIC "-//ApacheSoftwareFoundation//DTDStrutsConfiguration2.0//EN" "http://struts.apache.org/dtds/struts-2
6、.0.dtd"><struts><packagename="demo"extends="struts-default"><actionname="test" class="action.MyAction">……</action><actionname="my" class="action.MyAction"method="my">……</action></package></struts> 上面代码的两个动作的class属性都指向同一个类,name为这个类起了两个动作别名:test和my.在动作my中,使用了method属性指定要要运行的方法名为my. 在My
7、Action类中必须要有my方法,代码如下:packageaction;importcom.opensymphony.xwork2.ActionSupport;publicclassMyActionextendsActionSupport{……publicStringexecute()throwsException{//处理test动作的代码}publicStringmy()throwsException{ //处理my动作的代码}……} 除了在struts.xml中配置别名,还可以通过请求参数来描述指定动作(并不需要在struts.xml中配置
此文档下载收益归作者所有