一. 表达式语言简介
Expression Language 或称EL表达式,简称EL,是Java中的一种特殊的通用编程语言,借鉴于JavaScript和XPath。主要作用是在Java Web应用程序嵌入到网页(如JSP)中,用以访问页面的上下文以及不同作用域中的对象 ,取得对象属性的值,或执行简单的运算或判断操作。EL在得到某个数据时,会自动进行数据类型的转换。
二. EL语法
以${
开始,以}
作为结束:
${EL表达式}
获取某对象的值可以直接写入对象的名称,如获取对象名为user的对象的值:
${user}
获取某对象的属性的值使用点操作符(.
操作符),如获取对象user的name属性和age属性的值的语法如下:
${user.name}
${user.age}
三. EL表达式使用注意事项
-
1.不管是引用型比较还是原始型的比较都是双等
==
,el表达式中没有equals比较. -
2.el中判断某个对象是否为空:
${empty 对象名} // 如果对象为空,则返回true ${ 对象名 == null} // 效果与上面一致
-
3.el表达式中对空值的处理为不显示.
${变量名}
当该变量为空,获取不到数据,不显示. -
4.运算符比较
用法和普通的比较用法一样
运算符的比较:${ 4 >= 2 }
结果为true -
5.常见例子
错误的例子${new java.util.Date()} // 不能有java代码 ${"hello" +8} // + 运算只能数字加数字,比如{"4"+"8"} ${2++ >= 3} // el中没有++ -- ,可以理解成java代码
正确的例子:
${2+1 } ${"2"+"1"} ${"2" + 1 }
-
6.文字常量
EL表达式支持以下文字常量:${true} // 布尔型 ${1314} // 整形 ${3.14} // 浮点型 ${"yves"} // 字符串型 ${null} // null (取出的值为null时,不会再页面上显示)
四. 依赖处理
<dependency>
<groupId>javax.el</groupId>
<artifactId>javax.el-api</artifactId>
<version>2.2.4</version>
<scope>provided</scope>
</dependency>
如果在项目中需要使用EL表达式,那么需要添加el-api.jar
依赖包,
通常在Web容器下都有相应版本的el-api.jar
,比如Tomcat容器.