1.redirect结果类型
2.案例:
struts.xml
action
regedit.jsp
testSuccess.jsp
redirect结果类型用来 “重定向”到指定的结果类型,该资源可以是jsp文件也可是所以Action,使用Redirect结果类型时,系统将调用HttpServletResponse的sendRediirect()方法,实现重定向带其他的文件。
redirect结果类型和dispactcher类型对应。dispatcher类型表示将请求转发给其他资源。而redirect是重定向到其他资源(参数会丢失,地址栏会变化。可以防止用户刷新浏览器重复提交表单的信息)。应用:
<result type="redirect">/testSuccess.jsp</result>
2.案例:
struts.xml
<package name="default" extends="struts-default"> <action name="showPerson" class="com.luob.action.ShowPerson"> <result name="success">/showPerson.jsp</result> </action> <!-- dispatcher resytype test --> <action name="test" class="com.luob.action.DispatcherTest"> <result type="dispatcher">/testSuccess.jsp</result> </action> <!-- redirect resytype test --> <action name="test2" class="com.luob.action.DispatcherTest"> <result type="redirect">/testSuccess.jsp</result> </action> </package>
action
package com.luob.action;
import com.opensymphony.xwork2.ActionSupport;
public class DispatcherTest extends ActionSupport {
private String personName;
private String personTelephone;
private String personAddress;
@Override
public String execute() throws Exception {
// TODO Auto-generated method stub
return SUCCESS;
}
public String getPersonName() {
return personName;
}
public void setPersonName(String personName) {
this.personName = personName;
}
public String getPersonTelephone() {
return personTelephone;
}
public void setPersonTelephone(String personTelephone) {
this.personTelephone = personTelephone;
}
public String getPersonAddress() {
return personAddress;
}
public void setPersonAddress(String personAddress) {
this.personAddress = personAddress;
}
}
regedit.jsp
<body>
您添加的联系人信息为:
<hr/>
<s:form action="test2" method="post" >
<s:textfield name="personName" label="姓名"/>
<s:textfield name="personTelephone" label="电话"/>
<s:textfield name="personAddress" label="地址"/>
<s:submit value="提交"/>
</s:form>
</body>
testSuccess.jsp
<body>
您添加的联系人信息为:
<hr/>
联系人姓名:<s:property value="personName"/>
联系人电话:<s:property value="personTelephone"/>
联系人地址:<s:property value="personAddress"/>
</body>