`
- 浏览:
168796 次
- 性别:
- 来自:
武汉
-
Struts2 访问或添加request/session/application属性
[size=xx-small]action代码
public String scope() throws Exception{
ActionContext ctx = ActionContext.getContext();
ctx.getApplication().put("app", "应用范围");//往ServletContext里放入app
ctx.getSession().put("ses", "session范围");//往session里放入ses
ctx.put("req", "request范围");//往request里放入req
return "scope";
}
JSP:
<body>
${applicationScope.app} <br>
${sessionScope.ses}<br>
${requestScope.req}<br>
</body>
如果只是往对象中注入值,建议使用上一中方法;
获取HttpServletRequest / HttpSession / ServletContext / HttpServletResponse对象有两种方法:
方法一:通过ServletActionContext.类直接获取:public String rsa() throws Exception{
HttpServletRequest request = ServletActionContext.getRequest();
ServletContext servletContext = ServletActionContext.getServletContext();
request.getSession()
HttpServletResponse response = ServletActionContext.getResponse();
return "scope";
}
方法二,实现指定接口,由struts框架运行时注入:public class HelloWorldAction implements ServletRequestAware, ServletResponseAware, ServletContextAware{
private HttpServletRequest request;
private ServletContext servletContext;
private HttpServletResponse response;
public void setServletRequest(HttpServletRequest req) {
this.request=req;
}
public void setServletResponse(HttpServletResponse res) {
this.response=res;
}
public void setServletContext(ServletContext ser) {
this.servletContext=ser;
}
}
注:建议使用第一种方法[/size]
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
在Struts2中,访问request、session和application对象是进行数据共享和传递的重要手段。这篇学习笔记主要探讨了如何在Struts2框架下有效地利用这三种域对象。 首先,request对象代表一次HTTP请求,它存储的数据仅...
OGNL是Struts2中强大的表达式语言,它允许开发者直接在JSP或Action中通过表达式来访问request、session和application中的数据。例如,`<s:property value="#session['key']" />`可以在页面上显示session中的值。在...
### Struts2 访问 Request、Session 和 Application 作用域详解 #### 一、引言 Struts2 是一个基于 Java 的开源 Web 开发框架,它继承了 Struts1 的优秀特性并进行了改进,提供了更加灵活和强大的功能。在 Struts2...
在"struts2-web"这个压缩包文件中,可能包含了一个或多个示例项目,演示了如何在Struts2的Action类中实现对application、session和request域的访问。开发者可以运行这些示例,通过观察控制台输出或页面显示,了解...
总结来说,Struts2提供了多种途径来让Action访问request、response和session,开发者可以根据实际需求和偏好选择合适的方法。无论是通过ActionContext、依赖注入还是拦截器,都能够在Action中灵活地操作这些关键的...
在Struts2框架中,理解并正确使用request、response、session和application范围对于有效地管理数据和状态至关重要。这些范围帮助我们在Web应用程序中实现逻辑和数据流的分离,提高代码的可维护性和可扩展性。通过...
一:访问或添加request/session/application属性 代码如下:public String scope() throws Exception{ ActionContext ctx = ActionContext.getContext(); ctx.getApplication().put(“app”, “应用范围”);//往...
2. Struts2不需要注意线程同步的问题,而Struts1则面临这个问题,因为Struts1对action创建的时候只创建一次,当多个用户同时访问这个action时,则必须出现这个同步的问题。而对Struts2来说,需要action时都要重新new...
Struts2 访问 Servlet API 方法总结 Struts2 框架提供了多种方式来访问 Servlet API,包括使用 ActionContext 类、实现接口和使用 ServletActionContext 类等。在本文中,我们将详细介绍 Struts2 访问 Servlet API ...
`AttributeMap`是一个特殊的类,它可以用来获取所有作用域内的值,包括`request`、`session`和`application`范围内的数据。 #### 三、接口实现 为了能够访问这些作用域,Struts2提供了几个接口,开发者可以根据...
Struts2 标签可以访问不同的作用域的类,例如 request、session、application 等。 标签的优点 Struts2 标签库提供了主题、模板支持,极大地简化了视图页面的编写,而且,Struts2 的主题、模板都提供了很好的扩展...
- 访问不同范围内的属性:如`#attr.userName`会按照`request > session > application`的顺序查找`userName`属性。 - **条件筛选**:在集合中使用OGNL进行条件筛选,例如`books.{?#this.price>35}`表示筛选价格...
- EL表达式默认会先查找page范围内的变量,然后依次是request、session和application范围。 **示例代码:** ```jsp <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> ... <h1>Welcome, ${user....
4. 命名对象:包括在Servlet作用范围内的对象信息,如Request、Session、Application等。 在实际开发中,开发者可以通过OGNL表达式访问值栈中的Action属性、对象和其他信息。例如,使用标签可以输出Action中的属性...
1.采用struts2架构构建一个简单的登录系统。 要求如下: (1)系统功能要求:当用户在登录页面上填写用户名和密码并提交后,系统检查该用户是否已经注册,若注册,系统进入主页面,否则,进入注册页面。 (2)使用...
4. **使用`#`符号**: 如`<s:property value="#request.username"/>`,这里`#request`表示访问HttpServletRequest对象,同样`#session`和`#application`分别代表HttpSession和ServletContext对象。 #### 核心标签...
在Struts2框架中,`#`符号是一种非常重要的语法元素,主要用于访问上下文中的变量。本文将详细介绍`#`符号的使用方法及其应用场景,帮助读者更好地理解和掌握Struts2框架的相关知识。 #### 一、Struts2简介 Struts...
在这个“Struts2五种数据封装Demo”中,我们将深入探讨Struts2的数据封装机制,以及如何通过配置文件来操作Servlet的三大核心对象——Request、Session和Application。同时,我们还将了解如何从表单中获取数据并进行...
它有内置对象如request、response、session、application等,方便处理HTTP请求和响应。 - **EL(Expression Language)**:EL简化了在JSP中获取和设置属性值的方式,无需编写Java脚本,使得JSP更加简洁。 - **JSTL...