在JSP页面中访问action类中数据
2014-06-06 09:43
387 查看
1.s:action标签概述
s:action标签功能为:在JSP页面中访问action类中的数据,执行某些操作,并返回相应数据;其属性及意义如下:
2.新建Acton实例类
Java代码
package com.wl.control.tagsAction;
import com.opensymphony.xwork2.ActionSupport;
public class RunAction extends ActionSupport {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String execute() throws Exception {
return "runaction";
}
}
3.新建JSP页面
Java代码
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<body>
name的值是:
<s:property value="#parameters.name"/>
</body>
</html>
4.修改struts.xml文件
Java代码
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="Struts2.1" extends="struts-default">
<action name="runaction" class="com.wl.control.tagsAction.RunAction">
<result name="runaction">/controlTags/runaction.jsp</result>
</action>
</package>
</struts>
5.创建使用Action标签的JSP页面
Java代码
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<body>
显示runaction.jsp中的内容并且输出name参数的值:
<br/>
<s:action name="runaction" executeResult="true"></s:action>
<br/>
显示runaction.jsp中的内容并且不输出name参数的值:
<br/>
<s:action name="runaction" executeResult="true" ignoreContextParams="true"></s:action>
<br/>
仅仅调用runaction,不显示结果:
<br/>
<s:action name="runaction"></s:action>
<br/>
</body>
</html>
注释:s:action标签的属性executeResult值为True时,代表返回一个结果页面在JSP页面中显示;s:action标签属性ignoreContextParams值为True时,代表忽略URL中的参数。
特别注意了,这样容易造成死循环,可以新建一个JSP页面,加上 <s:action name="runaction" executeResult="true"></s:action>,然后在struts.xml中跳转到内容页面
s:action标签功能为:在JSP页面中访问action类中的数据,执行某些操作,并返回相应数据;其属性及意义如下:
属性名 | 是否必需 | 默认值 | 类型 | 说明 |
executeResult | False | False | Boolean | 是否将action返回的结果视图显示在当前页面中 |
flush | False | True | Boolean | 是否进行刷新 |
ignoreContextParams | False | False | Boolean | 是否忽略URL参数 |
name | True | — | String | 指定调用哪个action |
namespace | False | — | String | 指定调用哪个action的命名空间 |
var | False | — | String | 将调用的action的名称放到值栈中 |
Java代码
package com.wl.control.tagsAction;
import com.opensymphony.xwork2.ActionSupport;
public class RunAction extends ActionSupport {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String execute() throws Exception {
return "runaction";
}
}
3.新建JSP页面
Java代码
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<body>
name的值是:
<s:property value="#parameters.name"/>
</body>
</html>
4.修改struts.xml文件
Java代码
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="Struts2.1" extends="struts-default">
<action name="runaction" class="com.wl.control.tagsAction.RunAction">
<result name="runaction">/controlTags/runaction.jsp</result>
</action>
</package>
</struts>
5.创建使用Action标签的JSP页面
Java代码
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<body>
显示runaction.jsp中的内容并且输出name参数的值:
<br/>
<s:action name="runaction" executeResult="true"></s:action>
<br/>
显示runaction.jsp中的内容并且不输出name参数的值:
<br/>
<s:action name="runaction" executeResult="true" ignoreContextParams="true"></s:action>
<br/>
仅仅调用runaction,不显示结果:
<br/>
<s:action name="runaction"></s:action>
<br/>
</body>
</html>
注释:s:action标签的属性executeResult值为True时,代表返回一个结果页面在JSP页面中显示;s:action标签属性ignoreContextParams值为True时,代表忽略URL中的参数。
特别注意了,这样容易造成死循环,可以新建一个JSP页面,加上 <s:action name="runaction" executeResult="true"></s:action>,然后在struts.xml中跳转到内容页面
相关文章推荐
- jsp页面访问后台方法显示数据
- JSP页面加载时同时访问action获取数据( struts标签s:action方法)
- 关于jsp web项目,jsp页面与servlet数据不同步的解决办法(报错404、405等)即访问.jsp和访问web.xml中注册的/servlet/的区别
- Struts2中jsp页面和Action类的数据交互之OGNL和值栈
- Jsp默认打开页面无数据访问Servlet获取数据
- kendo ui 访问数据库数据,绘制jsp页面
- [android]webview访问jsp页面,能否从jsp页面获取数据
- 用定制标签库和配置文件实现对JSP页面元素的访问控制
- 在一个jsp页面实现二级下拉框联动,实时读取数据库数据(用javascript实现)
- 在JSP页面中轻松实现数据饼图 2
- tomcat访问jsp页面
- JSP页面如何访问标签中定义的变量-使用实现
- jsp页面显示数据导出到excel表中
- 在一个jsp页面实现二级下拉框联动,实时读取数据库数据
- Base-Jsp-5-在页面、请求和用户之间共享数据
- 在JSP页面中轻松实现数据饼图
- 在一个jsp页面实现二级下拉框联动,实时读取数据库数据
- 在JSP页面中实现检索数据的分页显示
- 在JSP页面中轻松实现数据饼图 1
- 用定制标签库和配置文件实现对JSP页面元素的访问控制