1.jsp
request ---- javax.servlet.HttpServletRequest
response ----javax.servlet.HttpServletResponse
out --- javax.servlet.JspWriter
page --- javax.servlet.jsp.PageContext
session --- javax.servlet.http.HttpSession
application --- javax.servlet.ServletContext
pageContext --- 可以访问本页内的所有对象
<%--在方法中_jspService(requst,response) --%>
<%int methor_var1= 789;%>
<%-- 这里声明的全部是在类中 --%>
<%!int class_var1 = 789;%>
2.EL表达式
表达式语言的灵感来自于 ECMAScript 和 XPath 表达式语言,它提供了在 JSP
中简化表达式的方法。它是一种简单的语言,基于可用的命名空间(PageContext
属性)、嵌套属性和对集合、操作符(算术型、关系型和逻辑型)的访问符、映射到 Java 类中静态方法的可扩展函数以及一组隐式对象。
EL的启用
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"
isELIgnored="false"%>
语法结构
${expression}
运算符[]和.
当要存取的属性名称中包含一些特殊字符,如.或?等并非字母或数字的符号,就一定要使用“[ ]“,如:
${user.My-Name}应当改为${user["My-Name"] }
如果要动态取值时,就可以用“[ ]“来做,而“.“无法做到动态取值。例如:
${sessionScope.user[data]}中data 是一个变量
// data 是一个变量
${sessionScope.user[data]}
EL查看变量顺序
依序从Page、Request、Session、Application范围查找
EL对象
术语
定义
param
|
将请求参数名称映射到单个字符串参数值(通过调用 ServletRequest.getParameter
(String name) 获得)。getParameter (String) 方法返回带有特定名称的参数。表达式 $(param.name)
相当于 request.getParameter (name)。
|
paramValues
|
将请求参数名称映射到一个数值数组(通过调用 ServletRequest.getParameter
(String name) 获得)。它与 param 隐式对象非常类似,但它检索一个字符串数组而不是单个值。表达式
${paramvalues.name) 相当于 request.getParamterValues(name)。
|
header
|
将请求头名称映射到单个字符串头值(通过调用 ServletRequest.getHeader(String name) 获得)。表达式 ${header.name} 相当于 request.getHeader(name)。
|
headerValues
|
将请求头名称映射到一个数值数组(通过调用
ServletRequest.getHeaders(String) 获得)。它与头隐式对象非常类似。表达式
${headerValues.name} 相当于 request.getHeaderValues(name)。
|
cookie |
将 cookie 名称映射到单个 cookie 对象。向服务器发出的客户端请求可以获得一个或多个
cookie。表达式 ${cookie.name.value} 返回带有特定名称的第一个 cookie 值。如果请求包含多个同名的
cookie,则应该使用 ${headerValues.name} 表达式。 |
initParam |
将上下文初始化参数名称映射到单个值(通过调用 ServletContext.getInitparameter(String name) 获得)。 |
除了上述两种类型的隐式对象之外,还有些对象允许访问多种范围的变量,如 Web 上下文、会话、请求、页面:
术语
定义
pageScope
|
将页面范围的变量名称映射到其值。例如,EL 表达式可以使用 ${pageScope.objectName} 访问一个 JSP 中页面范围的对象,还可以使用 ${pageScope.objectName.attributeName} 访问对象的属性。
|
requestScope
|
将请求范围的变量名称映射到其值。该对象允许访问请求对象的属性。例如,EL 表达式可以使用
${requestScope.objectName} 访问一个 JSP 请求范围的对象,还可以使用
${requestScope.objectName.attributeName} 访问对象的属性。
|
sessionScope
|
将会话范围的变量名称映射到其值。该对象允许访问会话对象的属性。例如:
$sessionScope.name}
|
applicationScope
|
将应用程序范围的变量名称映射到其值。该隐式对象允许访问应用程序范围的对象。
|
3.JSTL
JSTL中没有本地范围的概念。只有page,request,session和application范围的变量。
使用c:set存储变量,scope属性默认为page, 若不指定则变量存储在page范围里
本地变量读取
<%=name%>
用法和structs标签一样
分享到:
相关推荐
结合“总结之JSP.docx”文档,可能涵盖了对JSP、EL和JSTL的综合概述,包括它们的概念、使用场景、优点和最佳实践。这些文档内容对于初学者理解JSP开发以及提升Java Web技能非常有帮助,特别是对于准备IBM的Java考试...
6. **JSTL与EL表达式(Expression Language)**:JSTL通常与JavaServer Pages Expression Language (EL) 结合使用,EL用于在JSP页面中访问和操作Java对象。EL表达式可以在JSTL标签中直接使用,简化了数据绑定。 7. ...
JSTL与EL一起使用,可以极大地提高JSP页面的效率。EL用于表达式求值,而JSTL提供了一系列的标签,两者结合使用,可以减少脚本代码,使页面更专注于展示逻辑。 **3. javax.servlet.jsp.jstl-1.2.1.jar** 这个文件是...
EL 表达式和 JSTL 的总结 EL 表达式是 Expression Language 的缩写,它是一种借鉴了 JavaScript 和 XPath 的表达式语言。EL 定义了一系列的隐含对象和操作符,使开发人员能够很方便地访问页面内容,以及不同作用域...
网上书店 jsp jstl1.1+el+sql2000+javabean 网上书店 jsp jstl1.1+el+sql2000+javabean 网上书店 jsp+jstl1.1+el+sql2000+javabean 网上书店 jsp+jstl1.1+el+sql2000+javabean 网上书店 jsp+jstl1.1+el+sql2000+...
在Java Web开发中,`javax.servlet.jsp.jspl.core.ConditionalTagSupport`是JSTL(JavaServer Pages Standard Tag Library)库中的一个核心类,用于支持条件标签的实现。当你遇到`java.lang.NoClassDefFoundError: ...
**JSP中的EL和JSTL表达式** 在JavaServer Pages (JSP) 开发中,EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)是两个非常重要的工具,它们极大地简化了页面逻辑,提高了代码的可读性和...
以下是一个简单的JSTL和EL结合的例子,展示一个列表的元素: ```jsp <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> List<String> list = new ArrayList(); list.add("元素1"); list.add(...
JSTL的核心是与Java Expression Language(EL)紧密集成,EL则是一个用于在JSP页面中获取和操作数据的简洁表达式语言。 **EL(Expression Language)**是Java Servlet 2.4及更高版本中引入的一种轻量级脚本语言。它...
EL在JSTL 1.1规范中得到了进一步发展,与JSP 2.0容器紧密集成,使得EL表达式可以直接在JSP页面的任何地方使用,而无需依赖JSTL标签。 **JSTL的标签库组件包括:** 1. **核心标签库 (Core Tags)**:提供了处理循环、...
会议管理系统使用EL和JSTL优化jsp页面
JSTL 包含了多个核心功能模块,如表达式语言 (EL)、国际化 (i18n)、XML 处理等。导入 JSTL 至 JSP 页面需要特定的 jar 包,以便在页面中使用这些标签。 首先,我们来详细了解一下 JSTL 的核心组件: 1. **core**:...
### EL表达式与JSP JSTL标签库的总结 #### 一、EL表达式的使用方法及示例 ##### 1. EL隐含对象 在Java Server Pages (JSP) 技术中,EL(Expression Language)表达式是一种用于简化JSP页面中Java代码编写的工具。...
**JSP技术与EL表达式、JSTL详解** 在Web开发中,JavaServer Pages (JSP) 是一种用于创建动态网页的技术。JSP允许开发者将HTML代码与Java代码混合编写,以实现服务器端的数据处理和逻辑控制。然而,为了提高代码的...
JSP页面则使用EL和JSTL来展示数据和构建分页导航。 总之,EL和JSTL的结合使用使得Java Web开发更加高效和易于维护。通过它们,我们可以轻松实现新闻管理系统的分页功能,提供用户友好的界面和流畅的浏览体验。在...
2.jsp运行原理-----jsp本质就是servlet(面试) jsp在第一次被访问时会被Web容器翻译成servlet,在执行 过程: 第一次访问---->helloServlet.jsp---->helloServlet_jsp.java---->编译运行 PS:被翻译后的...
1. EL表达式的语法和用法:理解如何访问和操作对象属性,以及如何使用EL表达式进行简单的计算和条件判断。 2. JSTL核心标签库的使用:学会如何利用`<c:if>`、`<c:forEach>`等标签编写控制流,以及如何通过`<c:set>`...
EL表达式(Expression Language)与JSTL(JavaServer Pages Standard Tag Library)是JSP Web开发中的重要组成部分,它们极大地提升了代码的可读性和维护性。在这个名为"EL表达式&JSTL;标签库_jar包"的压缩包中,...
2. **standard-1.1.2.jar**: 这个jar包是JSTL的EL(Expression Language)支持,也称为JSTL的fmt和fn库,提供了额外的功能,如日期/时间格式化和数组/集合操作。 在实际项目中,为了使用JSTL,我们需要在web.xml...