EL表达式

一、EL表达式简介:

  EL 全名为Expression Language。主要作用有:

  1.获取数据;  (语法:"${标识符}") EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象、获取数据

  2.执行运算:(语法:${运算表达式}) 利用EL表达式可以在JSP页面中执行一些基本的关系运算、逻辑运算和算术运算,以在JSP页面中完成一些简单的逻辑运算

  3.获取web开发常用对象:(语法:${隐式对象名称})EL 表达式定义了一些隐式对象,利用这些隐式对象,web开发人员可以很轻松获得对web常用对象的引用,从而获得这些对象中的数据。

  4.调用Java方法:EL表达式允许用户开发自定义EL函数,以在JSP页面中通过EL表达式调用Java类的方法。

二、【】和.运算符

  EL 提供“.“和“[ ]“两种运算符来存取数据,当要存取的属性名称中包含一些特殊字符,如 . 或 - 等并非字母或数字的符号,就一定要使用“[ ]“。

比如:${ user. My-Name}应当改为${user["My-Name"]};

  如果要动态取值时,就可以用“[ ]“来做,而“.“无法做到动态取值。如:${sessionScope.user[data]}中data 是一个变量

三、操作符

  

术语
定义
算术型
+、-(二元)、*、/、div、%、mod、-(一元)
逻辑型
and、&&、or、||、!、not
关系型
==、eq、!=、ne、<、lt、>、gt、<=、le、>=、ge。可以与其他值进行比较,或与布尔型、字符串型、整型或浮点型文字进行比较。
empty 空操作符是前缀操作,可用于确定值是否为空。
条件型
A ?B :C。根据 A 赋值的结果来赋值 B 或 C。
 

四、注意

  1.当表达式根据名称引用这些对象之一时,返回的是相应的对象而不是相应的属性。

  2.<%@ page isELIgnored="true" %> 表示是否禁用EL语言,TRUE表示禁止.FALSE表示不禁止.JSP2.0中默认的启用EL语言。

  3.全局禁用EL表达式,在web.xml中进行如下配置:

<jsp-config>
<jsp-property-group>
<url-pattern>*.jsp</url-pattern>
<el-ignored>true</el-ignored>
</jsp-property-group>
</jsp-config>
原文地址:https://www.cnblogs.com/-heart-/p/10706724.html