EL表达式总结

EL(Expression Language)表达式语言,语法:${表达式},例如:${"Beijing 2008"}则在JSP页面输出Beijing 2008,相当于JSP脚本中的<%="Beijing 2008"%>,在EL表达式中的“'”和“"”功能是一样的,表示一个字符串;

 

在JSP页面中我们可以禁用EL表达式,需要配置page指令的isELIgnored属性,属性值若为true则支持EL表达式,若为false则禁用表达式,默认情况下是支持EL表达式的。

 

在EL表达式中我们可以使用运算符以达到我们想要的结果,运算符按作用分为以下几种:

 

1.算术运算符

 

+ 注意:在EL表达式中的‘+’只有数学运算的功能,没有连接符的功能,它会试着把运算符两边的操作数转换为数值类型,进而进行数学加法运算,最后把结果输出。若出现${'a'+'b'}则会出现异常。 例如:${6+6}

- 例如:${4-3}

* 例如:${4*3}

/ 例如:${9/3}

2.关系运算符

 

> 例如:${8>9}

>= 例如:${45>=9}

< 例如:${4<9}

<= 例如:${9<=8}

== 例如:${4==4}

!= 例如:${4!=3}

3.逻辑运算符

 

&& 例如:${false && false}

|| 例如:${true || false}

! 例如:${!true}相当于${false}

4.三元运算符

 

? : 例如:${3>2?'是':'不是'}

在EL表达式中还有一些特殊运算符:

 

empty 判断EL表达式中的表达式是否为空,例如:${empty sessionScope.user}

. 是我们最常用的,作用相当于执行Bean中的get方法。 例如:${sessionScope.user.userName}意思是:在会话中得到名称为user的Bean对象,通过“.”运算符执行getUserName();方法,返回存放在Bean中的用户名属性的值。

[] 作用和“.”运算符的一样,只不过[]运算符可以执行一些不规则的标识符。 例如:${requestScope.user["score-math"]},这个表达式中有不规则的标识符,是不能使用“.”来访问的。

在EL表达式中为我们提供了许多内置对象,使我们很方便的得到我们想要的数据:

 

1.从隐式对象中得到数据:

 

pageScope 例如:${pageScope.user.userName} 相当于<%=page.getAttribute("user").getUserName%>

requestScope 例如:${requestScope.books} 相当于<%=request.getAttribute("books")%>

sessionScope 例如:${sessionScope.lastURL} 相当于<%=session.getAttribute("lastURL")%>

applicationScope 例如:${applicationScope.provice} 相当于<%=application.getAttribute("provice")%>

2.从请求头中得到数据:

 

header 例如:${header.referer}得到请求过来的URL

3.访问JSP页面中的内置对象:

 

pageContext 例如:${pageContext.request}在EL表达式中我们是不能直接使用JSP页面的内置对象,但可以是用pageContext间接得到这些内置对象,再来使用。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值