由JSP到 EL表达式(一)

1 EL表达式目的

         EL(Expression Language)表达式语言,目的:为了使JSP写起来更加简单,EL提供了JSP中简化表达式的方法。

2 EL表达式定义

        它是一种简单的语言,基于可命名空间(PageContext属性)、嵌套属性和对象集合、操作符(算属型、关系型和逻辑型)的访问符、映射到java类中的静态方法的可扩展函数以及一组隐式对象。

 

3语法结构

        3.1${expression}

        3.2[] 与.运算符,EL提供[] 和 . 两种运算符来存取数据。eg: ${user["name"] (动态存取值时用[] . 不能动态存取)

        3.3 变量

 

        el存取变量的方法, 为${username} 取出某一个范围中名称为username的变量。当我们没有指定哪一范围的username,它会依次从Page、Request、Session、Application范围内查找。

 

4有效表达式

        我们比较常用的是它的几个隐式对象

隐式对象定义
pageContext用于访问jsp隐式对象,为页面的响应或请求对象赋值。
param请求参数名称映射到单个字符串参数值。eg:表达式${parma.name} 相当于request.getParameter(name)
paramValues请求参数名称映射到一个数值数组。eg:${parmavalues.name}相当于request.getParameterValues(name)
header表达式${header.name}相当于request.getHeader(name)
headerValues${headerValues.name}相当于request.getHeaderValues(name)
cookies将cookie名称映射到单个cookie对象
initParam初始化参数名称映射到单个值。ServletContext.getInitparameter(String name)获得。

 

        注意:

         1、当用表达式引用这些对象时,返回的是相应的对象,而不是相应的属性。eg:${pageContext} 返回PageContext对象。

         2、<%@ page isELigonred="true" %>表示是否禁用EL语言,true表示禁止,false表示未禁止,jsp2.0默认未禁止。

 

5举例

        1 ${param.username}----------------><%=request.getParameter("username") %>

 

        代码片段

 

 

 

        2 ${user.addr}--------------><%=user.getAddr()%>

 

        代码片段

 

 

        3 ${requestScope.userlist}----------><%=request.getAttribute("userlist")%>

 

        4 ${userlist}执行顺序为:${pageScope.userlist} , ${applicationScope.userlist}, ${sessionScope.userlist},  ${requestScope.userlist}直到找到为止。

 

        5 ${user.username}-------------------><%=user.getUsername()> 

 

        6 取得map中的值${map.k1 }

 

        7 表达式对运算符的支持:1+1=${1+1},10/5=${10/5} 10 div 5 =${10 div 5}

 

 

 

 

 

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值