EL表达式

EL表达式


因为热爱,所以拼搏。 --RuiDer


EL表达式

 EL:Expression Language 表达式语言,是在JSP 2.0引入的一个新特性,用于JSP文件中数据访问。它的作用相当于替代了JSP中
 的<%= %>和<% %>Java程序片段,使用更方便,更简单。

主要作用

1.数据访问
2.替代<%= %>和<% %>Java程序片段

基本语法

形如 ${var}
例如:
1.${param.username}等同于 <%=request.getParameter("username")%>
都用于在页面输出请求参数username
2.Java类User对象user的属性name的访问
	${sessionScope.user.name}或者${(sessionScope.user)["name"]}
	<%=sessionContext.getparameter("username").name%>
3.EL表达式的运算符
	${2-1},${2*5},支持加减乘除取模运算符
	${12<=5},支持关系运算符
	${!(12>3)},${16>3&&17<2},支持逻辑运算符
说明:EL表达式不是一门通用于开发的语言,它只是一个重要的特性,简洁了JSP数据访问。

特殊表达式 :

1.${empty var}表示var是否为空,如果为空,输出true,否则,输出false
说明:
	-var不存在,返回true
	-var存在,但是var=null,返回true
	-var属于集和对象(Set,Map,List),他们不包含元素时输出True
2.${a>b?1:2}支持条件运算符

隐含对象

EL表达式定义了是一个隐含对象,他们都是java.util.Map类型,EL表达式可以通过他们Web应用中的数据。

1.applicationScope:把Web应用范围内的属性名和属性值进行映射。
2.cookie:把客户请求的cookie名和cookie对象进行映射
3.header:把Http请求头部的项目名和所有匹配的项目值进行映射。比如${header.host}等同于<%=request.getHeader("host")%>
4.headerValues:把请求头部的项目名和项目值的数组进行映射。
5.initParam:把web中的初始化参数名和参数值进行映射。
6.pageScope:把页面范围内的属性名和属性值进行映射。
7.pageContext:代表javax.servlet.jsp.PageContext对象
8.param:把请求参数名和参数值进行映射。
9.paramValues:把请求参数名和请求参数值的数组映射。
10.requestScope:请求范围内的属性名和属性值的映射。
11.sessionScope:会话范围内的属性名和属性值进行映射。

注意:对于含有 "-"字符的属性名或者参数名,必须采用"[]"来访问数据。比如:
	${user["user-name"]}而不是${user.user-name}

重头戏

EL表达式访问的数据是特定范围内的,不是任何命名变量,比如web应用范围内的,会话范围内,page范围内等特定范围内的数据。

比如:
	<%
	String name="tom";
	%>
	${name}
访问上面命名的name变量是错误的,如果在上面所述的特定范围内没有name属性名或者参数名,返回结果为空。

作者寄语

做过项目的都知道,EL表达式会在项目中普遍使用,尤其在前后端整合,相当便捷。这是我的博客

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值