EL语言

EL的前世今生

 

         EL即Expression Language,是一种简单的数据访问语言,最初是JSTL1.0中定义的,从JSTL1.1开始,Sun公司将其从JSTL分离出来,成为JSP2.0规范中单独的一部分,并增加了很多新的特性。

 

最基本的应用

 

${user}

等效于jsp脚本表达式:<%= pageContext.findAttribute(“user”) %>或<%=request.getSession().getAttribute("user")>

 

访问javaBean中的属性对象中的属性

 

${sessionScope.student.id}

 

访问有序集合中的元素

 

${teacherIds[2]}

 

执行基本的关系运算、逻辑运算和算术运算

 

         ${1 > (5 / 2)}

         输出结果:false

 

使用自定义函数完成一些复杂功能

         ${xyz:filter(“<img/>”)}

         其中,xyz:filter是自定义函数,“<img/>”是传递给这个自定义函数的参数

 

EL表达式中使用一些列隐含对象

 

         如:pageContext、cookie

 

在页面上输出”${“

 

         “\” + “$”,即”\${xyz}”可以输出” ${xyz}”

         另外,${“${”}可以输出”${”

 

忽略页面中所有的EL表达式

 

         <%@ page isELIgnored=”true” %>

 

EL的基本语法

 

         标识符(变量和自定义函数名称):有任意顺序的大小写字母、数值、下划线组成,不能以数值开头,不能使用EL中的保留字,布恩那个使用EL隐含对象的标识符,不能使用的符号:单引号,双引号,减号,正斜杠(/)

         保留字:and,eq,or等

         EL中的常量

                   布尔:true/false

                   整形:与java中的十进制整形常量相同

                   浮点数:取值范围同Double,可以使用指数形式(如1.2E4)

                   字符串:用单引号双引号引起来的一连串的字符

                            关于内部单/双引号的转义(\)规则:

                                     只有用单引号引起来的字符串,内部的单引号才需要转义,双引号不需要转义

                                     同理,只有双引号…

                   Null:

 

         EL中的变量

 

                   El表达式语言的核心概念就是将变量映射到一个对象上,其中的变量不用先定义,而是直接使用,EL API中定义了javax.servlet.jsp.el.VariableResolver类来将一个变量名映射到某个对象上,他实现了隐含对象的映射,还实现了非隐含对象的变量标识符与各个域范围内的属性值的映射。

                   如果EL表达式中包含变量名不对应EL隐含对象的标识符,则EL引擎将调用pageContext.findAttribute()方法在各个域中(page,request,session,applecation)依次查找变量名的属性值,如果找到这个属性,则返回找到的属性值,如果没有找到,则返回null。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值