附:struts2中ValueStack和Stack Context二者的区别:
ValueStack很简单,里面放的都是Action的属性,要有get和set方法,例如你的ActionClass中有name这个变量并有get set方法,那么ValueStack就会有这么一个属性。
Stack Context里面比较乱,常用的有map型的request/session/attr/application,用OGNL访问前面要加上 “#”例如 #session
(1)type="dispatcher" 为默认,用于jsp页面跳转
<result name="success">/index.jsp</result>
完整的写法为:
<result name="success" type="dispatcher">
<param name="location">/index.jsp</param>
</result>
(2)type="redirect" 重定向到jsp、action、外部网址
<result name="success" type="redirect">/index.jsp</result>
<result name="success" type="redirect">/login.do</result>
<result name="success" type="redirect">http://www.baidu.com</result>
这种方法可以传递action中的参数到JSP页面
重定向时带参数处理方法:
1.type="redirect":
<result name="success" type="redirect">/login.do?userId=${userId }</result>
2.type="redirect-action":
见(3)
(3)type="redirect-action" 重定向到另外一个action
<result name="success" type="redirect-action">
<param name="actionName">login.do</param> 重定向action名
<param name="userId">userId</param>带的参数
</result>
(4)type="chain" 用于action跳转。
<action name="action1" class="org.Action1">
<result name="success" type="chain">action2.do</result>
</action>
<action name="action2" class="org.Action2">
<result name="success">login.jsp</result>
</action>
(5)type="plaintextj" 跳转显示源代码
<result name="err" type="plaintext">
<param name="location">具体的位置</param>
<param name="charSet">字符规范(如GBK)</param>
</result>