EL表达式

来源:互联网 发布:上海数据交易中心 知乎 编辑:程序博客网 时间:2024/06/18 09:32
  • 什么是EL

    • EL即Expression Language(表达式语言)
  • EL的功能

    • 替代JSP页面中的复杂代码
  • EL的语法

    • ${ EL exprission }
    • bean.name{ bean[‘name’] }

EL的特点

  1. 自动转换类型
    1.1、 EL得到某个数据时可以自动转换类型
    1.2、 对于类型的限制更加宽松
  2. 使用简单
    1.1、相比较在JSP中嵌入Java代码,EL应用更简单

EL的语法

  1. 以“${”作为开始,以“}”作为结束
  2. 直接使用变量名获取值$

    ${ username }



变量属性范围(作用域)名称

– – 属性范围 EL中的名称 page(只能在本页面使用) pageScope,例如${pageScope.username},表示在page范围内查找username变量,找不到返回Null request(请求时使用) requstScope session(会话时使用,但不能跨用户) sessionScope application(应用级,整个项目都能使用) applicationScope

EL中的运算符

  • 运算符”[ ]”
  • 运算符”.”

    EL中的运算符使用示例

  • 获取对象属性

 ${user.name}    <----相等作用----->     ${user[name]}


EL获取对象集合中的数据

  • 在Session中保存了一个(list)集合users
${sessionScope.user[1]}     得到集合中第二位的对象

EL简单应用示例

<%    Map names = new HashMap();    names.put("one","LiYang");    names.put("two","WangHua");    //设置集合值,放入到请求当中    request.setAttribute("names",names);%>姓名:${names.one}<br/>姓名:${names["two"] }<br/>


EL小结

当二个不同的作用域的,通过相同键值,传递值时,接受页面,会根据就近原则取值。

设置页面
request.setAttribute(“ce”,”测试1”);
session.setAttribute(“ce”,”测试2”);

取值页面
此时取到的是 “测试1”
${ce}

取session中,指定作用域即可
${sessionScope.ce}

原创粉丝点击