EL表达式

什么是EL表达式,作用是什么

El表达式全称exception language
作用:替代jsp的表达式脚本进行表达式输出;

<%
    request.setAttribute("key","value");
%>
<%=
request.getAttribute("key")
%>
${key}

特点

(1)el表达式在输出null时输出的是空字符串,表达式脚本输出的是null字符串
(2)当四个域中都有相同的key时,el表达式会按照从小到大的顺序从四个域中搜素数据,找到就输出。
pageContext:当前jsp页面有效;
request:一次请求内有效;
session:一次会话范围内有效(会话是指打开浏览器访问服务器,知道关闭浏览器)
application:整个web工程内都有效(只要web工程不停,数据就在。)
(3)el表达式在输出对象的属性时,本质上是调用的getXX()方法,只要有getXX()方法,哪怕是没有XX相对应的属性,也可以得到XX对应的值

El表达式关系运算:

el表达式可以输出关系运算的结果
例如:${a>b} ;结果输出true
关系运算符:
eq ==
ne !=
lt <
gt >
le <=
ge >=

EL表达式.运算和[]运算:

.运算可以输出bean对象中某个属性的值;
[]运算可以输出有序集合中某个元素的值,还可以输出map中key名字有特殊字符的key的值;
特殊字符包括:关系运算符,算数运算符,逻辑运算符,点运算符,还有各种的符号,比如?,!…

empty运算:

empty可以判断一个值是否为空,为空输出true,反之为false;
有以下几种情况为空:
1.值为null;
2.值为空串;
3.值为object类型的数组,长度为0;
4.list集合,长度为0;
5.map集合,长度为0;

El表达式的11个隐含对象:

	  变量					类型				作用
pageContext      		PageContextImpl		可以获得jsp中的九大内置对象
pageScope		  		Map<String,Object>	可以获得pageContext域中的对象 
requestScope	  		Map<String,Object>	可以获得request域中的对象
sessionScope	  		Map<String,Object>	可以获得Session域中的对象
applicationScope	 	map<String,Object> 可以获得ServletContext域中的对象
param 					map<String,Object>	可以获得请求参数的值
paramvalues				map<String,Object[]>	可以获得请求参数的值(多个)
header					map<String,Object>	可以获得请求头的信息
headerValues			map<String,Object[]>	可以获得请求头信息,可以获得多个值的情况
cookie					map<String,Object>	可以获得当前请求的cookie信息
initParam				map<String,Object>	可以获得在web.xml里配置的<context-param>上下文参数

PageContext的用法:

1.协议: ${pageContext.request.scheme};

2.服务器ip:${pageContext.request.serverName};

3.服务器端口:${pageContext.request.serverPort};

4.获取工程路径:${pageContext.request.contextPath};

5.获取请求方法:${pageContext.request.method};

6.获取客户端ip地址:${pageContext.request.remoteHost}

7.获取会话的ip编号:${pageContext.session.id}

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值