一、EL简介
1.语法结构
${expression}
2.[]与.运算符
EL 提供.和[]两种运算符来存取数据。
当要存取的属性名称中包含一些特殊字符,如.或?等并非字母或数字的符号,就一定要使用 []。例如:
${user.My-Name}应当改为${user["My-Name"] }
如果要动态取值时,就可以用[]来做,而.无法做到动态取值。例如:
${sessionScope.user[data]}中data 是一个变量
3.变量
EL存取变量数据的方法很简单,例如:${username}。它的意思是取出某一范围中名称为username的变量。
因为我们并没有指定哪一个范围的username,所以它会依序从Page、Request、Session、Application范围查找。
假如途中找到username,就直接回传,不再继续找下去,但是假如全部的范围都没有找到时,就回传null。
属性范围在EL中的名称
Page PageScope
Request RequestScope
Session SessionScope
Application ApplicationScope
二、EL隐含对象
1.与范围有关的隐含对象
与范围有关的EL 隐含对象包含以下四个:pageScope、requestScope、sessionScope 和applicationScope;
它们基本上就和JSP的pageContext、request、session和application一样;
在EL中,这四个隐含对象只能用来取得范围属性值,即getAttribute(String name),却不能取得其他相关信息。
例如:我们要取得session中储存一个属性username的值,可以利用下列方法:
session.getAttribute("username") 取得username的值,
在EL中则使用下列方法
${sessionScope.username}
2.与输入有关的隐含对象
与输入有关的隐含对象有两个:param和paramValues,它们是EL中比较特别的隐含对象。
例如我们要取得用户的请求参数时,可以利用下列方法:
request.getParameter(String name)
request.getParameterValues(String name)
在EL中则可以使用param和paramValues两者来取得数据。
${param.name}
${paramValues.name}
3.其他隐含对象
cookie
JSTL并没有提供设定cookie的动作,
例:要取得cookie中有一个设定名称为userCountry的值,可以使用${cookie.userCountry}来取得它。
header和headerValues
header 储存用户浏览器和服务端用来沟通的数据
例:要取得用户浏览器的版本,可以使用${header["User-Agent"]}。
另外在鲜少机会下,有可能同一标头名称拥有不同的值,此时必须改为使用headerValues 来取得这些值。
initParam
initParam取得设定web站点的环境参数(Context)
例:一般的方法String userid = (String)application.getInitParameter("userid");
可以使用 ${initParam.userid}来取得名称为userid
pageContext
pageContext取得其他有关用户要求或页面的详细信息。
${pageContext.request.queryString} 取得请求的参数字符串
${pageContext.request.requestURL} 取得请求的URL,但不包括请求之参数字符串
${pageContext.request.contextPath} 服务的web application 的名称
${pageContext.request.method} 取得HTTP 的方法(GET、POST)
${pageContext.request.protocol} 取得使用的协议(HTTP/1.1、HTTP/1.0)
${pageContext.request.remoteUser} 取得用户名称
${pageContext.request.remoteAddr } 取得用户的IP 地址
${pageContext.session.new} 判断session 是否为新的
${pageContext.session.id} 取得session 的ID
${pageContext.servletContext.serverInfo} 取得主机端的服务信息
三、EL运算符
1.算术运算符有五个:+、-、*或$、/或div、%或mod
2.关系运算符有六个:==或eq、!=或ne、<或lt、>或gt、<=或le、>=或ge
3.逻辑运算符有三个:&&或and、||或or、!或not
4.其它运算符有三个:Empty运算符、条件运算符、()运算符
例:${empty param.name}、${A?B:C}、${A*(B+C)}
四、EL函数(functions)。
语法:ns:function( arg1, arg2, arg3 …. argN)
其中ns为前置名称(prefix),它必须和taglib 指令的前置名称一置
分享到:
相关推荐
**JavaWeb程序设计入门课件EL基本语法共15页.pdf** 这是一份关于JavaWeb程序设计的入门级课程资料,特别关注了Expression Language(EL)的基本语法。EL是JavaServer Pages(JSP)标准的一个重要组成部分,它提供了...
Java Web程序设计是Web...总的来说,本课件详细介绍了EL的基本概念,为初学者提供了理解Java Web程序设计中EL语法的基础。通过学习这些知识点,开发者可以更有效地在JSP页面中处理和展示数据,提升Web应用的用户体验。
它的主要目标是提供一种简单的方式来访问存储在作用域中的对象属性,以及执行基本的算术和逻辑操作。EL表达式通常在`${}`中书写,比如`${user.name}`用来获取名为`user`的对象的`name`属性。 **JSTL中的核心标签库...
它的基本语法以`${}`为标识,用于在JSP页面中嵌入动态内容。EL表达式不仅支持简单的属性访问,还包含了丰富的操作符和运算规则。 **变量属性范围**: EL表达式中的变量可以关联到四个不同的作用域:page、request、...
**EL表达式全解语法中文技术文档** **一、EL表达式基础** ...这份文档详尽地涵盖了EL的全部语法,无论是基础概念还是高级特性的应用,都进行了深入浅出的阐述,对于初学者和经验丰富的开发者来说都是极好的参考资料。
### EL表达式语法详解 #### 一、EL表达式概述 ...通过了解EL表达式的基本概念、类型以及如何使用这些表达式,开发人员可以更加高效地构建动态网页应用。此外,正确理解和使用EL表达式有助于提高代码的可读性和维护性。
EL允许开发者在JSP页面中通过简洁的语法来获取数据,从而取代了较为复杂的JSP脚本代码。 EL的全名为Expression Language,它最初只能在JSTL标签中使用,例如: ```jsp ${3+7}"/> <p>Hi!${username} ``` 上述代码...
本篇将深入探讨JSP的基本语法以及如何逐步深化对JSP的理解。 ### 一、JSP的基本语法 1. **JSP页面结构**:一个JSP页面由两部分组成,即HTML或XML标记(负责页面布局和静态内容)和JSP指令或元素(负责动态内容和...
**EL (Expression Language) 语法详解** EL,全称为Expression Language,是Java EE中的一个标准表达式语言,主要用于简化JSP页面中的数据访问和控制逻辑。它为开发者提供了一种简洁的方式来获取和设置JavaBeans或...
EL 表达式的语法非常简单,基本语法结构为:${expression},其中 expression 是一个有效的 EL 表达式。EL 表达式可以访问 Java 对象的属性,例如:${user.name},访问 User 对象的 name 属性。 三、EL 表达式的作用...
EL 表达式的基本语法结构为 `${expression}`,其中 `expression` 是一个 EL 表达式。EL 提供了两种运算符来存取数据:`.` 和 `[]`。`.`运算符用于访问对象的属性,而 `[]` 运算符用于访问对象的属性,其中属性名称中...
首先,让我们深入了解Vue的基础语法。Vue实例是整个应用的核心,它通过`new Vue()`创建。在HTML文件中,我们通常使用`<script>`标签引入Vue库,并创建实例,将DOM元素与Vue实例绑定。例如: ```html ...
EL的基本语法** EL表达式通常以`${}`包裹,例如`${variable}`,它会查找与`variable`相关的Java对象或属性。EL支持的操作符包括: - 点操作符:`.` 用于访问对象的属性,如`${user.name}`获取`user`对象的`name`...
### EL (Expression Language) 与 JSTL (JavaServer Pages Standard Tag Library) 技术解析 #### 一、EL 概述 EL(Expression Language),即表达式...掌握EL的基本语法和应用场景对于提升Web开发效率具有重要作用。
EL的基本语法以${作为起始符号,以}作为结束符号。它提供了.和[]两种运算符用于存取数据,这两种运算符可以实现相同的功能,但它们在使用上存在细微的差别。比如,使用.运算符无法处理属性名中包含特殊字符(如点号...
EL的基本语法** EL表达式通常以`${}`包裹,用于在JSP页面中动态地计算和输出值。例如, `${user.name}` 将输出名为`user`的JavaBean的`name`属性值。EL支持基本的算术运算、逻辑运算以及对集合的遍历。 **2. EL的...
在IT行业中,EL(Expression Language)是Java EE平台的一个重要组成部分,主要用于简化...这篇319_EL.pdf的学习笔记将详细介绍EL的各个方面,包括基础语法、高级特性和实践技巧,对于提升你的Web开发技能将大有裨益。
**JSP基础语法知识详解** ...综上所述,JSP基础语法知识涵盖了从页面结构、指令、脚本元素到动作标签和EL等多个方面,是构建动态Web应用的重要工具。熟练掌握这些知识,有助于开发者高效地开发和维护Java Web项目。
【JSTL与EL基础详解】 JSTL(JavaServer Pages Standard Tag Library)和EL(Expression Language)是Java Web开发中的两个重要组件,主要用于增强JSP页面的功能和可读性。JSTL是一组标签库,提供了处理常见任务如...