完整代码:Struts16ActionResultsDemo.rar

1.动态结果。

有时我们需要在Action里取得我个要转跳的页面

看一下我们的struts.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<!-- Add packages here -->
<constant name="struts.devMode" value="true" />
<constant name="struts.enable.DynamicMethodInvocation" value="true"/> <!-- Add packages here --> <package name="testdefalult" namespace="/abc" extends="struts-default">
<action name="mya" class="com.pengli.struts.parampack.MyActionOne" method="Def">
<result>${value}</result>
</action>
</package> </struts>

很简单只是把result里用${value}取代了具体和页面,那看一下我们的

action是怎么写的

package com.pengli.struts.parampack;

import com.opensymphony.xwork2.ActionSupport;

public class MyActionOne extends ActionSupport{
private String strType;
private String myValue;
public String Def()
{
if(strType!=null&&strType.equals("a"))
{
setValue("/NewJsp.jsp"); }
else
{
setValue("/Errors.jsp");
}
return SUCCESS;
}
public String getType() {
return strType;
}
public void setType(String type) {
this.strType = type;
}
public String getValue() {
return myValue;
}
public void setValue(String value) {
this.myValue = value;
}
}

这是根据type给value赋值,转跳到相应的页面上

http://localhost:8080/Struts16ActionResultsDemo/abc/mya?type=a

正常页面

赋一个别的值

2.带参数的跳转

我们知道redirect形式的转跳是共享值栈的,我们上边说的是&{value}取的是一个整体页面,我们也可以用它来保存和提取参数

这里我们是基于1修改的代码

看一下structs.xml

       <action name="myb" class="com.pengli.struts.parampack.MyActionOne"  method="Defb">
<result>/NewJsp.jsp?v=${type}</result>
</action>

再看一下Action

public String Defb()
{
if(strType!=null)
{
myValue=String.valueOf(Integer.parseInt(strType)+1);
}
return SUCCESS;
}

再看一下jsp页面,因为xml里是直接轩跳的,没有经过Action

所以NewJsp.jsp?v=${type}取v的值时要这么取

  <body>
This is my JSP page. <br>
parameters v <s:property value="#parameters.v"/>
<s:debug></s:debug>
</body>

完整代码:Struts16ActionResultsDemo.rar

最新文章

  1. vue 2.0
  2. C语言调用curl库抓取网页图片(转)
  3. 通过源码理解UST(用户栈回溯)
  4. bootstrap学习笔记&lt;八&gt;(bootstrap核心布局风格——栅格系统)
  5. Google Volley: How to send a POST request with Json data?
  6. python中隐式的内存共享
  7. AspNet上传文件的几个控件
  8. [wikioi]均分纸牌
  9. set,multiset容器类型
  10. ETHERNET帧结构
  11. mariadb 1045 (28000): Access denied for user &#39;root&#39;@&#39;localhost&#39; (using password: YES)
  12. PHP关于表单提交 后 post get分页
  13. Layoutinlater 转
  14. HNOI2017 滚粗记
  15. Echarts 南海诸岛简图显示位置调整
  16. 学习Hibenate随笔
  17. spring总结之二(Bean作用域、依赖注入)
  18. Cmder 设置默认打开目录、解决中文乱码
  19. 003_Mac挂载NTFS移动硬盘读取VMware虚拟机文件
  20. vue 组件使用中的细节点

热门文章

  1. activiti和SSH项目做整合
  2. HTML制作个人简历
  3. 关于tempdb的一些注意事项
  4. 使用C/C++,赋值运算时发生的转换
  5. Caused by: java.lang.NoClassDefFoundError: org/objectweb/asm/Type
  6. Servlet/JSP-04 JSP基础
  7. 烂泥:【转】rsync命令参数详解
  8. Android控件开发之Chronometer(转)
  9. Mysql数据库笔记
  10. 北理工c语言期末考试