后台调用ServletActionContext.getServletContext()获取application,ServletActionContext.getRequest()获取request信息,然后通过request信息获取session信息。和容器绑定可以获取除传值以外的容器其他信息。
package struts.test.action; import java.sql.SQLException; import java.util.Map; import javax.servlet.ServletContext; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; import org.apache.struts2.ServletActionContext; import com.opensymphony.xwork2.ActionSupport; /** * 登录练习 * @author zk * */ public class LoginAction extends ActionSupport { //获取request对象 HttpServletRequest request1; HttpSession session1; ServletContext application1; @Override public String execute() throws Exception { request1 = ServletActionContext.getRequest(); session1 = request1.getSession(); application1 = ServletActionContext.getServletContext(); request1.setAttribute("req", "request1属性"); session1.setAttribute("ses", "session1属性"); application1.setAttribute("app", "application1属性"); return SUCCESS; } }
前台2种方式获取(EL表达式和控制反转IOC)
<%@ page pageEncoding="UTF-8"%> <%@ taglib uri="/struts-tags" prefix="s" %> <% String path = request.getContextPath(); %> <html> <head></head> <body> <h1>adminSuc</h1> 管理员页面 <br/><br/> requset属性接受:<s:property value="#request.req"/> <br/> session属性接受:<s:property value="#session.ses"/><br/> application属性接受:<s:property value="#application.app"/><br/> <br/> ============================= <br/> <br/><h1> 另外一种获取方法 :</h1><br/> requset属性接受:${requestScope.req}<br/> session属性接受:${sessionScope.ses}<br/> application属性接受:${applicationScope.app}<br/> <br/> <br/> <a href="<%=path %>/login.jsp">返回</a> </body> </html>
相关推荐
Struts2是一个非常流行的Java Web框架,用于构建可维护性和可扩展性良好的企业级应用程序。在Web应用中,为了确保数据传输的安全性,通常会使用HTTPS协议,它基于SSL/TLS来加密通信,保护用户的隐私信息。Struts2...
- `('\43req\75@org.apache.struts2.ServletActionContext@getRequest()')`:获取当前HTTP请求对象。 - `('\43webRootzpro\75@java.lang.Runtime@getRuntime().exec(\43req.getParameter(%22cmd%22)))'`:执行用户...
### Struts2 访问 Request、Session 和 Application 作用域详解 #### 一、引言 Struts2 是一个基于 Java 的开源 Web 开发框架,它继承了 Struts1 的优秀特性并进行了改进,提供了更加灵活和强大的功能。在 Struts2...
以上步骤展示了Struts2框架中数据从前端到后端,再从前端展示的基本流程,是理解和实践Struts2框架的重要基础。随着项目的深入,你还将学习到更复杂的特性,如表单验证、拦截器、结果类型等,这些都是构建强大Web...
##### 1-2、struts.xml的配置 - **添加约束**:为了确保`struts.xml`文件格式正确且易于维护,需要在文件开头添加DTD声明。例如: ```xml <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts ...
Struts2是一个非常流行的Java Web框架,用于构建和维护可扩展、模块化且易于管理的企业级应用程序。在当今网络安全日益重要的环境下,使用HTTPS协议来确保数据传输的安全性变得至关重要。Struts2支持HTTPS配置,可以...
3. 在Action类中,设置需要返回的JSON属性,Struts2会自动将其序列化为JSON格式。例如: ```java public class YourAction { private Map, Object> data; // getters and setters... public String execute()...
struts2 chm 程序包 org.apache.struts2 接口概要 接口 说明 StrutsStatics Constants used by Struts. 类概要 类 说明 RequestUtils Request handling utility class. ServletActionContext Web-specific ...
### Struts2框架知识点 #### Struts2框架概述 Struts2是一个开源的Web应用程序框架,基于MVC(Model-View-Controller)架构模式。它为Java Web开发者提供了一个强大的平台来构建高度可扩展的应用程序。Struts2的...
3. **请求处理**:如果是Struts2请求,`StrutsPrepareAndExecuteFilter`将把请求交给`ActionProxy`处理。 4. **ActionInvocation实例化**:`ActionProxy`创建并初始化`ActionInvocation`实例。 5. **拦截器调用**:`...
这告诉Struts2框架当收到名为`struts2Action`的请求时,使用`Struts2Action`类,并返回JSON格式的结果。如果需要在Action执行后返回一个页面,可以将`result`元素的类型改为`dispatcher`。 总结来说,通过这种方式...
- **JSON结果类型**:Struts2提供了内置的支持,可以方便地返回JSON格式的数据。 **4. Struts2的中文乱码解决**: - 可以通过设置过滤器或在`struts.xml`中配置`struts.i18n.encoding`属性来解决中文乱码问题。 - ...
在Struts2框架中,开发Web应用时常会遇到用户下载文件的需求。然而,在这个过程中,如果用户在文件下载弹窗出现后选择取消下载,后台可能会出现异常,这通常是由于流处理不当导致的。本文将详细解析这个问题,并提供...
Struts2是一个强大的Java Web应用程序框架,它提供了一种组织和构建MVC(Model-View-Controller)架构的方式。在Struts2框架中,我们有时需要直接与Servlet API交互,例如处理HTTP请求、响应,或者使用Session、...
struts2文件上传,与xml校验 struts2文件校验可通过xml配对action的名称去校验属性的值。例如UploadAction.java中有一个book的属性。那么我可以定义一个UploadAction-validation.xml去校验这个book属性的内容。 xml的...
在本文中,我们将探讨两种在Struts2框架中返回JSON数据的方法。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,广泛用于前后端交互,尤其是在AJAX请求中。Struts2提供了一套方便的机制来支持JSON...
Struts2是一个强大的Java web应用程序框架,它提供了一种组织和构建MVC(模型-视图-控制器)架构的方式。在Struts2中处理文件下载是常见的需求,比如用户请求下载服务器上的文件,如PDF、图片或其他类型的文档。本...
### Struts2 使用注解(Annotation)实现文件下载 在Web开发中,文件上传与下载是常见的需求之一。Struts2框架提供了强大的功能来支持这一需求。本文将详细介绍如何使用Struts2框架结合注解(Annotation)的方式...