EL表达式在寻找值的时候,如果没有规定作用域范围,它是从小到大开始寻找,找到后就停止了。︿( ̄︶ ̄)︿
1.el表达式语言支持下面的功能
精确地访问存储对象
Bean属性的简略记法:点号记法与数组中括号记法
对集合的简单访问
对请求参数,Cookie和其他请求数据的简单访问
条件性输出
自动类型转换
空值取代错误
2.EL的语法
<!--${表达式}-->
${bean.name}
3.EEL表达式中的常量达式中的常量
4.在 JSP 表达式语言中为访问 Bean 的属性。
如果我们某个 JavaBean 对象示例存放在某个作用域里,使用 EL 可以直接访问该对象的任何属性。例如,mybean 对象的 name 属性,只需要使用${mybean. name}即可实现
$ {mybean.name}<!--实质是调用bean的getName ( ) 方法-->
$ { mybean ['name'] } <!--等同于${mybean.name}-->
5.EL表达式访问集合元素
如果要访问数组、List或Map集合里的元素,可使用${对象名[索引]}。如果索引或键所采用的形式可以满足合法Java变量名的要求,则Bean的点号记法可以使用集合的括号记法代替。
${books[1]} <!--其中books代表数组、List或Map集合,1代表元素索引-->
若操作的集合为二维集合
$ { map . name } <!--表示获取map集合中值为“name”的键值对的值-->
6.EL表达式访问Servlet中的共享数据
EL表达式访问通过setAttribute方法存储在PageContext、HttpServletRequest、HttpSession或ServletContext中的对象。
EL 会依次从 PageContext、HttpServletRequest、HttpSession 和 ServletContext 对象中 查找名为 name 的属性。如果找到该属性,则调用它的 toString()方法并返回调用的结果。 如果没有找到任何属性,则返回空字符串