`

struts2前后台传值汇总-(4)ServletRequestAware-http格式

    博客分类:
  • java
阅读更多

后台调用ServletRequestAware和ServletContextAware两个接口,并实现他们的set方法,来和容器绑定。通过控制反转(IOC)传递参数,此方法还可以获取容器其他信息。

注意:取session时候还是需要从Request中获取。

package struts.test.action;

import java.sql.SQLException;

import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;

import org.apache.struts2.ServletActionContext;
import org.apache.struts2.interceptor.ServletRequestAware;
import org.apache.struts2.util.ServletContextAware;

import com.opensymphony.xwork2.ActionSupport;

/**
 * 登录练习
 * @author zk
 *
 */
public class LoginAction extends ActionSupport implements ServletRequestAware,ServletContextAware{
	//获取request对象
	HttpServletRequest request1;
	HttpSession session1;
	ServletContext application1;
	
	@Override
	public String execute() throws Exception {
		session1 = request1.getSession();
		
		request1.setAttribute("req", "request1属性");
		session1.setAttribute("ses", "session1属性");
		application1.setAttribute("app", "application1属性");

 		 return SUCCESS;
 	}
	@Override
	public void setServletRequest(HttpServletRequest request1) {
		// TODO 自动生成的方法存根
		this.request1 = request1;
	}

	@Override
	public void setServletContext(ServletContext application1) {
		// TODO 自动生成的方法存根
		this.application1 = application1;
	}

}

 

前台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>    

 

  • 大小: 278 KB
分享到:
评论

相关推荐

    struts2访问request,session,application作用域

    ### Struts2 访问 Request、Session 和 Application 作用域详解 #### 一、引言 Struts2 是一个基于 Java 的开源 Web 开发框架,它继承了 Struts1 的优秀特性并进行了改进,提供了更加灵活和强大的功能。在 Struts2...

    Struts2面试题

    - 实现特定的`ServletXxxAware`接口,如`ServletRequestAware`、`HttpSessionAware`等,让Struts2注入相应的对象。 #### 五、默认包`struts-default`的作用 - `struts-default`包定义了许多内置的拦截器和Result...

    Struts2框架笔记

    ### Struts2框架知识点 #### Struts2框架概述 Struts2是一个开源的Web应用程序框架,基于MVC(Model-View-Controller)架构模式。它为Java Web开发者提供了一个强大的平台来构建高度可扩展的应用程序。Struts2的...

    struts2使用request、response

    ### Struts2中request与response的使用方法 #### 一、引言 Struts2作为Struts1的后续版本,在架构设计与实现机制上进行了大量的改进。相较于Struts1,Struts2对request、response、session等核心对象的处理方式有所...

    struts2框架核心笔记整力

    ### Struts2框架核心知识点详解 #### 一、Struts2框架概述 - **与Struts1的区别**:Struts2不仅仅是MVC模式的一个实现,它涵盖了Web应用程序开发的整个生命周期,包括测试和集成等阶段。 - **低侵入性**:在Struts...

    struts2中核心知识点(职场必备)

    4. **Struts2执行流程**: 请求从客户端发送,经过Web服务器解析配置,通过核心控制器`strutsPreparedAndExecuteFilter`,然后经过一系列拦截器处理,到达Action,Action执行后返回一个结果,再经过拦截器链,最后...

    struts2 简单的文件上传

    Struts2是一个强大的MVC(模型-视图-控制器)框架,广泛应用于Java Web开发中。文件上传是Web应用中的常见功能,例如用户上传图片、文档等。在Struts2框架下实现文件上传,需要理解以下几个核心概念和步骤: 1. **...

    MyEclipse开发Struts2

    Struts2是一个流行的Java web应用程序框架,用于构建MVC(模型-视图-控制器)架构的应用。MyEclipse是一款强大的集成开发环境,特别适合于Java EE应用的开发,包括Struts2项目。以下是对如何使用MyEclipse进行Struts...

    STRUTS2获得作用域、参数响应对象及三种符号说明

    ### STRUTS2获得作用域、参数响应对象及三种符号说明 #### 一、概述 在Struts2框架中,为了更好地管理Web应用程序中的请求、会话和应用范围的数据,Struts2提供了一系列的工具和机制。这包括了对`RequestMap`、`...

    JavaEE Struts文件上传

    2. **添加Struts2插件**:Struts2的文件上传功能依赖于`struts2-convention-plugin`和`struts2-core`等库。在`struts.xml`配置文件中,需要启用Multipart解析器,例如添加`&lt;constant name="struts.multipart.parser...

    struts2的API耦合与动态方法调用

    3. **实现ServletAware接口**:为了进一步解耦,Struts2允许开发者通过实现ServletRequestAware或ServletResponseAware接口,让Action类自动注入HttpServletRequest和HttpServletResponse对象。这样,无需在Action类...

    Uploadify结合Struts2上传demo

    用户可以通过Uploadify选择文件并上传,Struts2后台接收文件并进行处理。在实际开发中,你可能还需要处理文件大小限制、类型检查、错误处理等问题,以确保上传功能的健壮性和安全性。同时,随着技术的发展,现代...

    Struts2中Servlet的配置

    Struts2允许Action类通过实现`ServletResponseAware`和`ServletRequestAware`接口来直接访问`HttpServletResponse`和`HttpServletRequest`对象。这两个接口由`org.apache.struts2.interceptor`包提供。当你在Action...

    Struts2课后练习答案.docx

    Struts2 是一个流行的Java Web开发框架,主要用于构建基于MVC(Model-View-Controller)模式的应用程序。本节将深入讲解Struts2的核心过滤器、体系结构以及Action的相关知识点。 1. **Struts2的核心过滤器**: ...

    第十二章 开发Struts 2+Spring应用.pdf

    Struts 2提供了多种方式来访问HTTP会话和请求对象,例如使用`SessionAware`和`ServletRequestAware`接口。 #### 12.7 小结 通过本章的学习,你已经掌握了如何使用Struts 2和Spring框架构建复杂的Web应用程序。此外...

    Struts2 如何使Action取得属性范围 通配符 国际化等内容

    ### Struts2中Action获取属性范围的方法 #### 一、引言 在Struts2框架中,为了实现灵活的应用逻辑处理,开发人员往往需要在Action类中获取诸如`request`、`session`等HTTP范围对象的数据。Struts2提供了一系列方便...

    struts2课件

    ### Struts2框架基础知识与应用 #### 一、Struts2框架概述 1. **什么是框架** 框架是一种预先定义好的软件结构,它为开发者提供了一个基础架构来构建应用程序。开发者可以在框架的基础上扩展功能,而无需从零...

    Struts2教程:获得HttpServletResponse对象

    ### Struts2教程:获得HttpServletResponse对象 在深入探讨如何在Struts2框架中获取`HttpServletResponse`对象之前,我们先来简要回顾一下Struts2框架的基本概念及其与传统Struts1.x的区别。 #### Struts2框架简介...

Global site tag (gtag.js) - Google Analytics