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标签,开发者不仅能够提高代码的可读性和可维护性,还能大大减少页面上的脚本代码量,使页面更加整洁和专业。这对于构建高质量的企业级Web应用来说是非常重要的。
JSP(JavaServer Pages)、Struts和JSTL(JavaServer Pages Standard Tag Library)是实现MVC架构的常见技术栈,它们共同为开发者提供了一套强大的工具来构建高效的企业级应用。 **JSP(JavaServer Pages)** 是一...
### 从JSTL和STRUTS的TLD文件到自定义EL函数 #### TLD文件简介 在Java Web开发中,特别是在使用JSP技术时,我们经常需要使用到一些预定义好的标签库来简化页面的开发过程。JSTL(JavaServer Pages Standard Tag ...
从给定的文件信息中,我们可以看到,jstl和struts2标签都是用于截取字符串的。下面我们将对这两个标签进行详细的介绍和分析。 jstl标签 jstl标签是一种基于Java的标签库,它提供了一些基本的功能,如条件判断、...
通过阅读《Struts中文手册.pdf》可以深入理解Struts1.2的原理和配置,研究《JSTL.pdf》能掌握JSTL的各种标签用法,而《JSP.pdf》则可以帮助你巩固JSP的基础知识和实践技巧。这三份文档将构成一个全面的学习资源,...
Struts和JSTL是两种在Java Web开发中广泛使用的技术。Struts是Apache软件基金会下的一个开源MVC(Model-View-Controller)框架,它主要用于构建基于Java Servlet的Web应用程序,提供了一种组织和控制应用程序流程的...
"运用JSP+Struts+JSTL技术的MVC架构项目实例源码.rar"是一个基于MVC架构的Web应用示例,它使用了Java Server Pages(JSP)、Struts框架和JavaServer Pages Standard Tag Library(JSTL)这三种关键技术。 首先,JSP...
**JSTL(JavaServer Pages Standard Tag Library)学习——变量的取值范围和编译后的代码** JSTL是Java Web开发中常用的一组标准标签库,它提供了一系列的标签来简化HTML或JSP页面中的Java逻辑。在JSTL中,变量的...
在Java Web开发中,JSP(JavaServer Pages)是一种用于创建动态网页的技术,而JSTL(JavaServer Pages Standard Tag Library)是JSP的一种标准标签库,它提供了一系列的标签来简化页面逻辑,提高代码的可读性和可...
例如,JSTL的`<c:set>`标签可以用来设置变量,`<s:action>`在Struts2中用于执行Action,而Spring的`<form:form>`可以创建带有模型绑定和验证的表单。通过深入理解这些API,开发者可以写出更优雅、更高效的代码。 总...
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(JavaServer Pages Standard Tag Library)标签是Java Web开发中的两种重要组件,它们都用于简化HTML页面中的Java代码,提高可读性和可维护性。这两种技术在构建MVC(模型-视图-控制器)架构的Web...
JSTL标签库在服务器端被JSP引擎解析,然后转换为相应的Java对象和方法调用。这些标签库是基于接口的,允许开发者自定义实现以满足特定需求。例如,`<c:forEach>`标签会被转换为`java.util.Iterator`的迭代操作。 **...
本学习实例主要围绕Java Web开发中的JSP、Struts、JSTL和EL技术展开,旨在帮助开发者深入理解和应用这些核心技术构建实际的Web应用程序。这些技术都是Java EE平台上的重要组件,广泛用于企业级应用开发。 首先,JSP...
而JSTL(JavaServer Pages Standard Tag Library)是Java服务器页面的一个标准标签库,它使得在JSP中处理常见任务变得更加简单和标准化。JSTL包括几个核心标签库,如c(条件语句)、fmt(格式化)、x(XML处理)等,...
JSP 是一个用于创建动态网页的Java技术,而JSTL是一个标准的标签库,它提供了一种在JSP页面上执行常见任务的方法,比如XML处理、数据库操作、条件逻辑等,以减少Java脚本的使用。 描述中的"具体使用方法见文档"提示...
**JSP中的EL和JSTL表达式** 在JavaServer Pages (JSP) 开发中,EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)是两个非常重要的工具,它们极大地简化了页面逻辑,提高了代码的可读性和...
根据题目中的描述,要在JSP项目中使用JSTL,首先需要将`jstl.jar`和`standard.jar`这两个必要的JAR包导入到项目的`WEB-INF/lib`目录下。这是因为在Web应用程序中,JSP页面通常位于`WEB-INF`目录之外,而类路径...
标题中的"jakarta.servlet.jsp.jstl-api-2.0.0.jar"是一个重要的Java Web开发组件,它属于JavaServer Pages(JSP)标准标签库(JSTL)的一部分,用于提供一套标准的标签来简化HTML或XML文档的生成。JSTL的主要目标是...
在IT领域的Web开发中,JavaServer Pages (JSP)、Java Standard Tag Library (JSTL)、Expression Language (EL)以及Struts框架是常见的技术组件,它们各自扮演着不同的角色,但又可以协同工作,为开发者提供强大的...