【Struts框架】第一节Action-struts访问request等引用方法二
来源:互联网 发布:手机电脑无线连接软件 编辑:程序博客网 时间:2024/06/05 19:45
取得Map类型的request,session,application(最常用的开发方式):
LoginAction2.java:
struts.xml:
前台链接User_login.jsp:
前台取值User_login_success.jsp(左右两种访问方式):
PS:数据要用"#"才能提取出来。
[Debug]中也提到了:
These items are available using the #key notation
LoginAction2.java:
package cn.edu.hpu.getValue;import java.util.Map;import org.apache.struts2.interceptor.ApplicationAware;import org.apache.struts2.interceptor.RequestAware;import org.apache.struts2.interceptor.SessionAware;import com.opensymphony.xwork2.ActionSupport;public class LoginAction2 extends ActionSupport implements RequestAware,SessionAware,ApplicationAware{//实现RequestAware接口,此类就知道Request的存在,Session和Application一样//IOC设计思想,也称DI。//DI dependency injection依赖注入//IoC inverse of control控制反转//struts帮我们初始化了Request这些值//本来自己控制,自己去new或去取,现在让别人去取,变成了控制反转(Spring在用)private Map<String,Object> request;private Map<String,Object> session;private Map<String,Object> application;public String execute(){request.put("r1", "r1");session.put("s1", "s1");application.put("a1", "a1");return SUCCESS;}@Overridepublic void setRequest(Map<String, Object> request) {this.request=request;}@Overridepublic void setSession(Map<String, Object> session) {this.session=session;}@Overridepublic void setApplication(Map<String, Object> application) {this.application=application;}}
struts.xml:
<package name="login" namespace="/login" extends="struts-default"><action name="login*" class="cn.edu.hpu.getValue.LoginAction{1}"> <result>/User_login_success.jsp</result> </action></package>
前台链接User_login.jsp:
<input type="button" value="submit1" onclick="javascript:document.f.action='login/login1';document.f.submit();"/>
前台取值User_login_success.jsp(左右两种访问方式):
<%@taglib uri="/struts-tags" prefix="s"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html> <head> <title>User_login_success</title> </head> <body> User Login Success!!<br/> <s:property value="#request.r1"/> | <%=request.getAttribute("r1")%><br/><s:property value="#application.a1"/> | <%=application.getAttribue("a1")%><br/> <s:property value="#session.s1"/> | <%=session.getAttribute("s1")%><br/> <br/> <s:debug></s:debug> </body></html>
PS:数据要用"#"才能提取出来。
[Debug]中也提到了:
These items are available using the #key notation
原理:Map里面放的request中的值,在前台用request.getAttribute("r1")可以直接拿到,说明struts在Map和HttpServletRequest中间有关联。即是struts将Map中的所有值复制到对应的request等引用中,在前台直接可以从request等引用中取值。
转载请注明出处:http://blog.csdn.net/acmman/article/details/44239039
1 0
- 【Struts框架】第一节Action-struts访问request等引用方法二
- 【Struts框架】第一节Action-struts访问request等引用方法一
- 【Struts框架】第一节Action-struts访问request等引用方法三和四
- 【struts框架】第一节Action-路径问题与创建Action方法
- 【struts框架】第一节Action-struts基础
- 【Struts框架】第一节Action-action接受参数
- 【struts框架】第一节Action-NameSpace定义
- 【Struts框架】第一节Action-简单的数据校验
- 【Struts框架】第一节Action-模块包含和defaultAction
- Struts框架 action怎么动态调用方法
- Struts Action中获取Request
- struts如何访问request,session等web元素
- struts之Action中获取request、response对象的方法
- struts之Action中获取request、response对象的方法
- struts之Action中获取request、response对象的方法
- struts之Action中获取request、response对象的方法
- struts之Action中获取request、response对象的方法
- struts之Action中获取request、response对象的方法
- C++ 编写Windows服务
- goto对资源的释放问题的解决
- 调用手机的摄像头,并且返回照片显示在程序界面上.
- Objective-C的hook方案(一): Method Swizzling
- iOS webView 加载文件 及 文件操作
- 【Struts框架】第一节Action-struts访问request等引用方法二
- Bit-map (2) Bloom Filter 和 Counting Bloom Filter
- NAT打洞原理(转)
- python 进程间共享数据 (一)
- 杭电acm2091
- java 解析properties文件的两种方法
- VBR和CBR区别
- 《偏生要鲜花着景,应这急景流年》
- 关于csdn的转载