JSP EL表达式的基本语法及运算符的优先级(一览表)

EL 表达式定义了许多运算符,如算术运算符、关系运算符、逻辑运算符等,使用这些运算符,将使得 JSP 页面更加简洁。因此,复杂的操作可以使用 ServletJavaBean 完成, 而简单的内容则可以使用 EL 提供的运算符。

本文先来简单介绍一下 EL 表达式的基本语法,以及 EL 表达式中的运算符参与混合运算时的优先权。

EL 表达式的基本语法很简单,它以“${”开头,以“}”结束,中间为合法的表达式。语法格式如下:

${EL 表达式}


EL 表达式可以是字符串或是 EL 运算符组成的表达式。例如:
${sessionScope.user.name}

上述 EL 范例的意思是从 session 取得用户的 name。使用 EL 之前,JSP 的代码如下:
<%
User user=(User)session.getAttribute("user");
String name=user.getName();
%>

两者相比较之下可以发现,EL 的语法比传统的 JSP 代码更为方便、简洁。

在运算符参与混合运算的过程中,优先级如下表所示(由髙至低,由左至右):

表1 运算符参与混合运算时的优先级
序号 优先权
1 []
2 0
3 -(负)、not、!、empty
4 *、/、div、%、mod
5 +、-(减)
6 <、>、<=、>=、lt、gt、le、ge
7 ==、!-、eq、ne
8 &&、and
9 ||、or
10 ${A?B:C}