struts2问题!

来源:百度知道 编辑:UC知道 时间:2024/06/16 06:36:18
sreuts2权威指南里 第2章的一个例子

<?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">

<struts>
<package name="strutsqs" extends="struts-default">
<action name="Login" class="strutsTest.Login">
<result name="error">/error.jsp</result>
<result name="success">/welcome.jsp</result>
</action>
</package>
</struts>

其中<package name="strutsqs" extends="struts-default">的 name="strutsqs"是和哪对应的?我试了试 不管把name里的值改成什么 程序都能正常运行 但是不能把name属性删除 删除就报错了!这个name属性也没有在action类和其它地方出现!我实在搞不明白这个属性的

<package name="strutsqs" extends="struts-default">

中的 name 其实就是为 package 取了一个名字,目的是为了被别的package继承(extends)的时候用。

这里的extends="struts-default" ,就是继承了 name=“struts-default”的package 。

如果想要看那个文件,他在 struts2-core.jar 这个jar包中有,
文件名为struts-default.xml 。

package 一旦继承了一个 package ,那么父 package 中的配置也就被继承过来了。

前是默认的有名字的一个属性。
而extends="struts-default"意思是继承了struts默认的一些内容
你看struts源码就会有的.
你可以看看朗曦的struts视频里面讲的很清楚。。。

这个是默认的跳转,如果只有一个跳转,可以写成
<result>/error.jsp</result>,
但是action里面必须是error或者success或者其他默认的值