EL表达式

1.什么是EL?

  EL 全名为Expression Language。一般称为EL表达式,是JSP文件中用"${}"括起来的脚本。主要作用是替代掉JSP页面中的java代码,避免JSP中存在过多java代码使得代码变得混乱。并且EL表达式可以更方便的读取作用域对象中的数据。需注意EL表达式不能写在"<%%>"引起的JSP脚本中。

2.使用EL表达式获取数据并输出到页面

  语法: "${ xxx }"
  xxx是具体表达式内容,可以是变量、字符串或对象。
  一般情况下,EL表达式都是从四大作用域对象(从小到大分别是:pageContext、request、session、application)中获取数据。默认从最小作用域开始寻找,往大的作用域中找,都找不到显示为空。

3.怎么从指定作用域获取数据?

${pageScope.xxx }:从pageContext中获取数据
${requestScope.xxx}从request中获取数据
${sessionScope.xxx }从session中获取数据
${applicationScope.xxx }从application中获取数据

4.从请求中直接获取数据

EL表达式除了从作用域中获取数据之外还可以直接从请求中获取
${param.xxx}:通过xxx获取一个请求参数
${paramValues.xxx}:当xxx有多个值时使用,返回一个数组

5.EL操作符

1.“ . ”:${对象.xxx}:通过对象获取它的某个属性
2.“ [ ] ”:${对象[xxx]}:与“ . ”操作符作用相同。不同的是[ ]中的xxx可以是一个EL表达式
3.empty:${empty xxx} :判断xxx是否为空。为空就返回true,不为空返回false
4.“+”:在EL中没有字符连接,“+”只是数学运算符
补充:获取一个对象的属性,是通过反射调用这个对象的getXxx方法

6.“==”和eq

  在EL表达式中,“==” 等同于eq。只比较内容是否相等,不比较内存地址地址(比较的对象需重写equals方法)

原文地址:https://www.cnblogs.com/gaojinshun/p/10881672.html