ssh框架中struts.xml 的配置参数详解

时间:2024-04-11 14:06:23
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<!--
<?xml ?>中的为处理指令,DOCTYPE为文档类型声明,struts为指令根节点,PUBLIC代表为网络上的资源,
uri:"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
url: "http://struts.apache.org/dtds/struts-2.0.dtd"
http://struts.apache.org/dtds/struts-2.0.dtd只要上一次网会自动下载该dtd文件,
并且会自动缓存到MyEclipse中,dtd为约束文件
1~4行为规定好的约束条件 --> <struts>
<!--
<struts></struts>下可以定义多个package
package 定义一个包。包的作用:管理action
(通常,一个业务模块用一个包)
name 包的名字,可以任意取,
但是包名不能重复,一旦重复,启动时即报错
extends 当前包继承自哪个包,
在struts中,包一定继承struts-default
struts-default是在struts-default.xml中定义的包
abstract="true",表示该包为抽象包,抽象包中不能含有action的定义,否则运行时期报错
只有当前包希望被其它包继承的时候才为true,如:
<package name="basePackage" extends="struts-default" abstract="true"></package>
<package name="xxxx" extends="basePackage"
namespace 名称空间,默认为'/',作为路径的一部分
访问路径= http://localhost:8080/项目/名称空间/Struts中action标签的name属性
-->
<package name="xxxx" extends="struts-default" abstract="false">
<!--
action 配置请求路径与Action类的映射关系
name 请求路径名称
class 请求处理的action类的全名
method 请求处理的方法
converter 转换器(使用较少)
-->
<!--name的值为访问路径,class的值为访问路径对应的Action,method的值为对应Action中的方法 -->
<action name="hello" class="sram.action.HelloAction" method="execute">
<!--
result
name action处理方法返回值
type 跳转的结果类型
标签体中指定跳转的页面
-->
<!--name的值为Action方法返回的标记,type的值为跳转的结果类型(默认为dispatcher(转发)) -->
<result name="success" type="dispatcher">/success.jsp</result>
</action> <!--
这里action的name值要与对应的jsp文件(login.jsp)的
action="${pageContext.request.contextPath }/login"值一致
-->
<action name="login" class="sram.execute.UserAction" method="login">
<!-- name的值为Action方法返回的标记,type的值为跳转的结果类型(默认为dispatcher(转发)) -->
<result name="login" type="dispatcher">/index.jsp</result>
</action>
</package>
</struts>