struts2中Action跳转的convention 配置
程序员文章站
2022-06-17 19:31:48
...
本action演示了一个action执行完成后,转到另外一个action的情况。
(1)如果需要内部转发:则在要转到的方法前面定义一个新的action名称,名称为:前一方法名!前一方法返回值.
(2)如果需要外部重定向:则定义一个Result,类型必须为"redirect"。
(3)若即定义了外部重定向Result,也定义了内部转发,显调用时的名称相同,则执行外部重定向Result
(1)如果需要内部转发:则在要转到的方法前面定义一个新的action名称,名称为:前一方法名!前一方法返回值.
(2)如果需要外部重定向:则定义一个Result,类型必须为"redirect"。
(3)若即定义了外部重定向Result,也定义了内部转发,显调用时的名称相同,则执行外部重定向Result
package com.abc.domain.access.action.common; import org.apache.struts2.convention.annotation.Action; import org.apache.struts2.convention.annotation.Actions; import org.apache.struts2.convention.annotation.Namespace; import org.apache.struts2.convention.annotation.ParentPackage; import org.apache.struts2.convention.annotation.Result; import org.apache.struts2.convention.annotation.Results; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Controller; @Controller @Scope("prototype") //声明此类为控制层的类,且为prototype模式调用 @ParentPackage(value = "abc-default") @Results( { @Result(name="toShow", location="show.action", type="redirect"), @Result(name="add", location="add.action", type="redirect") }) @Namespace("/common/test") public class TestAction { @Actions({ @Action("show"), @Action("one!show") }) public String show() throws Exception { return "success"; } @Actions({ @Action("add"), @Action("two!add") }) public String add() throws Exception { return "success"; } @Action("one") public String one() throws Exception { //return "show"; //内部转发到show(),找到名为"one!show"的Action执行 return "toShow"; //外部重定向到show(),找到名为"toShow"的Result,然后再执行show() } @Action("two") public String two() throws Exception { return "add"; //外部重定向到add(),因为找到了名称为add的Result配置,所以不再去找two!add } }
上一篇: 用java触发器的实现松耦合
下一篇: java文件下载
推荐阅读
-
详解Struts2中Action访问Servlet API的几种方法
-
Struts2的常见配置&Action的访问
-
Struts2——action间的跳转
-
Struts2 Action中跳转Action
-
Nginx配置实例-反向代理实例:根据访问的路径跳转到不同端口的服务中
-
Struts2基于注解的Action配置
-
在Struts2的Action中取得请求参数值的几种方法
-
在Struts2的Action中取得请求参数值的几种方法
-
WebSphere升级到6.1.0.17所有struts2的程序中的Action都不能找到
-
WebSphere升级到6.1.0.17所有struts2的程序中的Action都不能找到