EL表达式概述
一、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
指令的前置名称一置
分享到:
相关推荐
#### 一、EL表达式概述 EL(Expression Language)表达式是一种简单且功能强大的表达式语言,它被设计用于在JavaServer Pages (JSP)中方便地访问JavaBean属性以及执行基本运算。通过学习本教程,你将能够熟练掌握EL...
#### 一、EL表达式的概述与基本使用 EL(Expression Language),即表达式语言,是JavaServer Pages (JSP) 2.0标准的一部分,用于简化JSP页面中对数据访问的操作。它允许开发者通过简单的语法在JSP页面中访问后端...
#### 一、EL表达式概述 EL (Expression Language) 是 JavaServer Pages (JSP) 技术中的一个重要组成部分,用于简化页面上动态内容的处理。EL 表达式允许开发者直接在 JSP 页面中访问 JavaBean 属性及执行简单运算。...
#### 一、EL表达式概述 EL(Expression Language),中文常被称作“表达式语言”,自JSP 2.0版本开始成为官方推荐的标准技术之一。EL的主要功能在于简化JSP页面中对对象及属性的操作方式,通过更加简洁的语法提高...
#### 一、EL表达式概述 EL (Expression Language),即表达式语言,是一种简单但功能强大的语言,主要用于简化JSP页面中Java代码的编写工作。EL表达式采用`{}`的形式来表示,可以在所有的HTML和JSP标签中使用,其...
#### 一、EL表达式概述 EL (Expression Language) 表达式是一种用于在JSP页面中获取数据的方式。它能够帮助开发者轻松地从JSP页面中获取各种内置对象中的数据,如请求参数、会话属性等。EL表达式的语法简洁明了,...
#### 一、EL表达式概述 **1.1 EL简介** - **语法结构**:EL表达式的基本语法结构是`${expression}`,其中`expression`表示一个合法的表达式。 - **运算符**:EL支持两种运算符来访问数据:`.`和`[]`。这两种...
#### 一、EL表达式概述 EL(Expression Language)表达式是一种简洁的方式,用于获取JavaBean属性或执行简单运算。在JSP页面中,它提供了从请求作用域、会话作用域、应用程序作用域以及页面作用域中获取数据的方法...
#### 一、EL表达式概述 EL(Expression Language),即表达式语言,是在JSP 2.0 (JavaEE 1.4) 规范中引入的一种强大的功能,用于简化数据获取和处理过程。EL表达式主要用来替代JSP页面中的脚本表达式,实现从不同Web...
#### 一、EL表达式概述 EL(Expression Language)表达式是一种在JSP页面中使用的简化数据访问语法,主要用于获取存储在不同作用域中的对象属性。EL表达式的典型格式为`${expression}`,其中`expression`可以是简单...
下面是一个创建自定义EL表达式的步骤概述: 1. 创建`FunctionMapper`实现类:你需要创建一个类,实现`FunctionMapper`接口,并在`resolveFunction`方法中定义函数映射逻辑。 2. 注册`FunctionMapper`:在Web应用的...
#### 一、EL表达式概述 EL(Expression Language)是一种简洁的表达方式,用于访问JavaBean属性。它简化了原本复杂的Java代码,并且可以在JSP页面中方便地使用。 ##### 1. 语法结构 EL表达式的语法结构非常简单:...
#### 一、EL表达式概述 JSP EL (Expression Language) 表达式是JSP 2.0规范引入的一种简化页面开发的技术,它提供了一种简单的方法来访问存储在JSP页面、请求、会话以及应用程序范围中的数据。EL表达式的使用极大地...
#### 一、EL表达式概述 EL(Expression Language),即表达式语言,是JavaServer Pages(JSP)技术中的一个重要组成部分。EL表达式主要用于简化JSP页面中的数据检索过程,使得开发者能够更加方便地从Web应用的不同作用...
#### 一、EL表达式概述 **EL**(Expression Language)是一种简单却强大的语言,主要用于在JSP页面上访问JavaBeans属性。EL表达式语法旨在简化Web开发人员对JSP页面中JavaBean属性的操作,提供了一种更加直观的方式来...
### EL表达式语言详解 #### 9.1 概述 在JSP页面开发中,为了提高代码的可读性和可维护性,开发者们逐渐转向使用标签库来替代传统的Java片段语言来实现页面的显示逻辑。然而,自定义标签虽然灵活,但也容易导致重复...
#### 一、EL表达式概述 **EL(Expression Language)** 表达式是JavaServer Pages技术中的一项重要特性,它为开发者提供了一种简便的方式来访问存储在JSP页面中的数据。EL表达式使得开发者可以在JSP页面中直接访问...
### EL表达式语言详解 #### 一、引言 EL表达式语言,即Expression Language,是一种简化了在JSP页面中获取对象属性的过程的语言。它主要用于处理数据模型,并且能够直接从模型中读取属性值,无需编写额外的Java...
#### 一、EL表达式概述 EL(Expression Language)是一种简洁的表达式语言,用于访问和操纵存储在JSP页面中的数据。EL表达式类似于`<%= %>`, 它们被用来在JSP页面中输出内容。在JSP页面中使用EL表达式时,它的语法...
### EL表达式运算符用法详解 #### 一、概述 在Java Web开发中,EL(Expression Language)表达式是一种非常实用的语言特性,主要用于在JSP页面中获取对象的值或者执行简单的运算操作。EL表达式的引入极大地简化了...