JSP中的表达式语言 (EL)

17 Mar 2025 | 阅读 2 分钟

表达式语言 (EL) 简化了对 Java Bean 组件中存储的数据以及其他对象(如 request、session、application 等)的访问。

EL 中有许多隐式对象、运算符和保留字。

它是 JSP 技术 2.0 版中新增的功能。


表达式语言 (EL) 的语法

表达式语言 (EL) 中的隐式对象

表达式语言中有许多隐式对象。 它们如下所示

隐式对象用途
pageScope它将给定的属性名称映射到页面范围内设置的值
requestScope它将给定的属性名称映射到请求范围内设置的值
sessionScope它将给定的属性名称映射到会话范围内设置的值
applicationScope它将给定的属性名称映射到应用程序范围内设置的值
param它将请求参数映射到单个值
paramValues它将请求参数映射到值数组
header它将请求标头名称映射到单个值
headerValues它将请求标头名称映射到值数组
cookie它将给定的 cookie 名称映射到 cookie 值
initParam它映射初始化参数
pageContext它提供对许多对象(request、session 等)的访问。

EL param 示例

在此示例中,我们创建了两个文件 index.jsp 和 process.jsp。 index.jsp 文件从用户获取输入并将请求发送到 process.jsp,后者又使用 EL 打印用户的姓名。

index.jsp

process.jsp


EL sessionScope 示例

在此示例中,我们使用 EL 打印存储在会话范围中的数据。 为此,我们使用了 sessionScope 对象。

index.jsp

process.jsp


EL cookie 示例

index.jsp

process.jsp


EL 中运算符的优先级

表达式语言中提供了许多运算符。 它们的优先级如下

[] .
()
-(unary) not ! empty
* / div % mod
+ - (binary)
< <= > >= lt le gt ge
== != eq ne
&& and
|| or
?:

EL 中的保留字

表达式语言中有许多保留字。 它们如下所示

ltlegtge
eqnetruefalse
并且notinstanceof
divmodemptynull
下一个主题Jsp 中的 MVC