EL(expression language)表达式

参考

http://www.jb51.net/article/20042.htm
http://elf8848.iteye.com/blog/888997

概述

  1. 目的:为了使JSP写起来更加简单。
  2. 灵感来自于 ECMAScript 和 XPath 表达式语言
  3. 提供了在 JSP 脚本编制元素(指页面中能够用于在 JSP 文件中嵌入 Java 代码的元素)范围外使用运行时表达式的功能。
  4. JSP 2.0 将 EL 表达式添加为一种脚本编制元素。

介绍

语法

${expression}

[ ]与.运算符

  • EL 提供“.“和“[ ]“两种运算符来存取数据。
  • 要存取的属性名称中包含一些特殊字符,如.或?等并非字母或数字的符号,就一定要使用“[ ]“。
  • 例如:${user.My-Name}应当改为${user[“My-Name”] }
  • 如果要动态取值时,就可以用“[ ]“来做,而“.“无法做到动态取值。例如:${sessionScope.user[data]}中data 是一个变量

变量

  • ${username}。它的意思是取出某一范围中名称为username的变量。
  • 因为没有指定哪一个范围的username,所以它会依序从Page、Request、Session、Application范围查找。
  • 假如途中找到username,就直接回传,不再继续找下去,但是假如全部的范围都没有找到时,就回传null。
  • 属性范围在EL中的名称。Page PageScope;Request RequestScope;Session SessionScope;

EL隐含对象

  • 与范围有关的EL隐含对象包含以下四个:pageScope、requestScope、sessionScope 和applicationScope;
    它们基本上就和JSP的pageContext、request、session和application一样;
  • 四个隐含对象只能用来取得范围属性值,即getAttribute(String name),却不能取得其他相关信息
  • 例如:session.getAttribute(“username”) 取得username的值;在EL中则使用下列方法:${sessionScope.username}

与输入有关的隐含对象

  • 两个:param和paramValues,它们是EL中比较特别的隐含对象。
  • ${param.name}
  • ${paramValues.name}

EL运算符

  1. 算术运算符有五个:+、-、*或$、/或div、%或mod
  2. 关系运算符有六个:==或eq、!=或ne、<或lt、>或gt、<=或le、>=或ge
  3. 逻辑运算符有三个:&&或and、||或or、!或not
  4. 其它运算符有三个:Empty运算符、条件运算符、()运算符
  5. 最常用3个:为空判断: emptyparam.name {A?B:C}算数运算:${A*(B+C)}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值