`

变量存取范围及JSP、JSTL和Struts技术中变量的存取方法

 
阅读更多

http://blog.csdn.net/yiyi735/article/details/2500567

JSP中变量的定义范围实际有5种:本地范围,页面范围(page),请求范围(request),会话范围(session)和应用程序范围(application)。
以下介绍在各种技术中的变量存取方法。
u       JSP中:
存储:
本地范围变量直接定义,如:
   String name="name in page";
page范围变量保存在pageContext隐式对象中,如:
   pageContext.setAttribute("nameContext","name in pageContext");
request范围变量保存在request隐式对象中,如:
   request.setAttribute("nameRequest","name in Request");
session范围变量保存在session隐式对象中,如:
   session.setAttribute("nameSession","name in Session");
application范围变量保存在application隐式对象中,如:
   application.setAttribute("nameApplication","name in Application");
读取:
   name:<%=name%><br/>
nameContext:<%=pageContext.getAttribute("nameContext").toString()%><br/>
nameRequest:<%=request.getAttribute("nameRequest").toString() %><br/>
nameSession:<%=session.getAttribute("nameSession").toString() %><br/>
nameApplication:<%=application.getAttribute("nameApplication").toString() %>
u       JSTL中
JSTL中没有本地范围的概念。只有page,request,session和application范围的变量。
存储
使用c:set存储变量。
scope属性默认为page, 若不指定则变量存储在page范围里:
   <c:set var="name" value="name in where"/>
   <c:set var="namePage" value="name in pageScope" scope="page"></c:set>
   <c:set var="nameRequest" value="name in requestScope" scope="request"></c:set>
   <c:set var="nameSession" value="name in sessionScope" scope="session"></c:set>
   <c:set var="nameApplication" value="name in ApplicationScope" scope="page"></c:set>
读取
使用c:out读取变量
c:out标签依次从page,request,session,application范围查找指定变量然后输出。也可以指定查找范围。
   nameSession - <c:out value="${nameSession}"/> - 依次搜索至session范围,找到nameSession变量,然后输出。<br/>
   namePage - <c:out value="${pageScope.namePage }"/> - 指定搜索范围为page范围<br>
   nameRequest - <c:out value="${requestScope.nameRequest }"/> - 指定搜索范围为request范围<br>
   nameSession - <c:out value="${sessionScope.nameSession }"/> - 指定搜索范围为session范围<br>
   nameApplication - <c:out value="${applicationScope.nameApplication }"/> - 指定搜索范围为application范围<br>
   name - <c:out value="${pageScope.name }"/>
struts
JSTL一样,只有page,request,session,application范围。
存储
使用bean:define
toScope
属性指定存储范围,默认为page, 若不指定则变量存储在page范围里
读取
使用bean:write
scope
属性指定读取范围,若没有设置此属性,则依次从page,request,session,application范围查找指定变量然后输出。

分享到:
评论

相关推荐

    jstl和struts标签

    ### JSTL与Struts标签库详解 ...通过使用JSTL和Struts标签,开发者不仅能够提高代码的可读性和可维护性,还能大大减少页面上的脚本代码量,使页面更加整洁和专业。这对于构建高质量的企业级Web应用来说是非常重要的。

    JSP+Struts+JSTL技术的MVC架构

    JSP(JavaServer Pages)、Struts和JSTL(JavaServer Pages Standard Tag Library)是实现MVC架构的常见技术栈,它们共同为开发者提供了一套强大的工具来构建高效的企业级应用。 **JSP(JavaServer Pages)** 是一...

    从JSTL和STRUTS的TLD文件到自定义EL函数

    ### 从JSTL和STRUTS的TLD文件到自定义EL函数 #### TLD文件简介 在Java Web开发中,特别是在使用JSP技术时,我们经常需要使用到一些预定义好的标签库来简化页面的开发过程。JSTL(JavaServer Pages Standard Tag ...

    (TAG标签)jstl和struts2标签截取字符串[文].pdf

    从给定的文件信息中,我们可以看到,jstl和struts2标签都是用于截取字符串的。下面我们将对这两个标签进行详细的介绍和分析。 jstl标签 jstl标签是一种基于Java的标签库,它提供了一些基本的功能,如条件判断、...

    struts1.2、jstl、jsp三种标签教程

    通过阅读《Struts中文手册.pdf》可以深入理解Struts1.2的原理和配置,研究《JSTL.pdf》能掌握JSTL的各种标签用法,而《JSP.pdf》则可以帮助你巩固JSP的基础知识和实践技巧。这三份文档将构成一个全面的学习资源,...

    struts+jstl

    Struts和JSTL是两种在Java Web开发中广泛使用的技术。Struts是Apache软件基金会下的一个开源MVC(Model-View-Controller)框架,它主要用于构建基于Java Servlet的Web应用程序,提供了一种组织和控制应用程序流程的...

    运用JSP+Struts+JSTL技术的MVC架构项目实例源码.rar

    "运用JSP+Struts+JSTL技术的MVC架构项目实例源码.rar"是一个基于MVC架构的Web应用示例,它使用了Java Server Pages(JSP)、Struts框架和JavaServer Pages Standard Tag Library(JSTL)这三种关键技术。 首先,JSP...

    jstl学习-变量的取值范围和编译后的代码

    **JSTL(JavaServer Pages Standard Tag Library)学习——变量的取值范围和编译后的代码** JSTL是Java Web开发中常用的一组标准标签库,它提供了一系列的标签来简化HTML或JSP页面中的Java逻辑。在JSTL中,变量的...

    jsp中使用jstl标签的驱动

    在Java Web开发中,JSP(JavaServer Pages)是一种用于创建动态网页的技术,而JSTL(JavaServer Pages Standard Tag Library)是JSP的一种标准标签库,它提供了一系列的标签来简化页面逻辑,提高代码的可读性和可...

    jstl,struts2,spring标签库api

    例如,JSTL的`&lt;c:set&gt;`标签可以用来设置变量,`&lt;s:action&gt;`在Struts2中用于执行Action,而Spring的`&lt;form:form&gt;`可以创建带有模型绑定和验证的表单。通过深入理解这些API,开发者可以写出更优雅、更高效的代码。 总...

    JSTL的各种标签文件和struts的标签文件,带strtus.jar包

    JSTL的各种标签文件和struts的标签文件,带strtus.jar包c-1_0.tld,c-1_0-rt.tld,c.tld,fmt-1_0.tld,fmt-1_0-rt.tld,fmt.tld,fn.tld,permittedTaglibs.tldscriptfree.tld,sql-1_0.tld,sql-1_0-rt.tld,sql....

    Struts标签 和jstl标签

    Struts标签和JSTL(JavaServer Pages Standard Tag Library)标签是Java Web开发中的两种重要组件,它们都用于简化HTML页面中的Java代码,提高可读性和可维护性。这两种技术在构建MVC(模型-视图-控制器)架构的Web...

    用JSTL技术改进JSP来简化网页

    JSTL标签库在服务器端被JSP引擎解析,然后转换为相应的Java对象和方法调用。这些标签库是基于接口的,允许开发者自定义实现以满足特定需求。例如,`&lt;c:forEach&gt;`标签会被转换为`java.util.Iterator`的迭代操作。 **...

    JSP+Struts+JSTL+EL学习实例

    本学习实例主要围绕Java Web开发中的JSP、Struts、JSTL和EL技术展开,旨在帮助开发者深入理解和应用这些核心技术构建实际的Web应用程序。这些技术都是Java EE平台上的重要组件,广泛用于企业级应用开发。 首先,JSP...

    用于dreamweaver的标签提示和格式化.JSTL的c,fmt,x和struts2

    而JSTL(JavaServer Pages Standard Tag Library)是Java服务器页面的一个标准标签库,它使得在JSP中处理常见任务变得更加简单和标准化。JSTL包括几个核心标签库,如c(条件语句)、fmt(格式化)、x(XML处理)等,...

    最新开发的一套jsp jstl

    JSP 是一个用于创建动态网页的Java技术,而JSTL是一个标准的标签库,它提供了一种在JSP页面上执行常见任务的方法,比如XML处理、数据库操作、条件逻辑等,以减少Java脚本的使用。 描述中的"具体使用方法见文档"提示...

    JSP中的EL和JSTL表达式

    **JSP中的EL和JSTL表达式** 在JavaServer Pages (JSP) 开发中,EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)是两个非常重要的工具,它们极大地简化了页面逻辑,提高了代码的可读性和...

    在jsp页面中引入jstl

    根据题目中的描述,要在JSP项目中使用JSTL,首先需要将`jstl.jar`和`standard.jar`这两个必要的JAR包导入到项目的`WEB-INF/lib`目录下。这是因为在Web应用程序中,JSP页面通常位于`WEB-INF`目录之外,而类路径...

    jakarta.servlet.jsp.jstl-api-2.0.0.jar

    标题中的"jakarta.servlet.jsp.jstl-api-2.0.0.jar"是一个重要的Java Web开发组件,它属于JavaServer Pages(JSP)标准标签库(JSTL)的一部分,用于提供一套标准的标签来简化HTML或XML文档的生成。JSTL的主要目标是...

    混用JSTL及EL和Struts.txt

    在IT领域的Web开发中,JavaServer Pages (JSP)、Java Standard Tag Library (JSTL)、Expression Language (EL)以及Struts框架是常见的技术组件,它们各自扮演着不同的角色,但又可以协同工作,为开发者提供强大的...

Global site tag (gtag.js) - Google Analytics