您的位置:首页 > 编程语言 > Java开发

struts.xml中的Result标签的type属性

2017-03-13 22:32 323 查看
result标签里面除了name属性之外,还有一个属性type属性

type属性:如何到路径里面(转发还是重定向)

一般像默认的是转发值是
dispatcher


而做重定向操作值是
redirect


struts.xml中的配置

<action name="book" class="cn.zhoushicanyin.Action.BookAction">
<result name="success" type="dispatcher">/world.jsp</result>
</action>
<action name="orders" class="cn.zhoushicanyin.Action.OrdersAction">
<result name="success" type="redirect">/hello.jsp</result>
</action>


BookAction

public class BookAction extends ActionSupport {
@Override
public String execute() throws Exception {

return BookAction.SUCCESS;
}
}


OrdersAction

public class OrdersAction extends ActionSupport {
@Override
public String execute() throws Exception {
return OrdersAction.SUCCESS;
}
}


转发



重定向



type属性两个值 dispatcher,readirect 这两个值一般针对到页面中配置

配置到其他的action里面

chain:转发到action 一般不同 缓存问题

redirectAction:重定向到action

struts.xml中的配置改一下

<action name="book" class="cn.zhoushicanyin.Action.BookAction">
<result name="success" type="dispatcher">/world.jsp</result>
</action>
<action name="orders" class="cn.zhoushicanyin.Action.OrdersAction">
<result name="success" type="redirectAction">book</result> //重定向到book中
</action>


BookAction中为了验证过程在其中写一个打印语句

public class BookAction extends ActionSupport {
@Override
public String execute() throws Exception {
System.out.println("hello book!");
return BookAction.SUCCESS;
}
}


OrdersAction也同样

public class OrdersAction extends ActionSupport {
@Override
public String execute() throws Exception {
System.out.println("hello orders!");
return OrdersAction.SUCCESS;
}
}


访问的是
http://localhost:8080/struts2_day02/orders.action


页面跳转到了world.jsp中



控制台也打印出相关的数据



所以可以说明这个程序大致运行顺序是访问完orders中的execute 就重定向到book中 访问完book中的execute的方法 就转发到world.jsp中

END!!!!!!!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: