EL(Expression Language)表达式语言
EL(Expression Language)表达式语言
EL的基本语法是以${开始,以}结束
为了能够方便地输出数据,EL提供了11个内置对象,其中
- 2个内置对象为了方便输出请求参数
- param用来输出请求参数的值,格式为${param.请求参数名字}
- paramValues:用来获取一对多的参数值,返回一个数组
- 4个内置对象为了方便输出各个范围的属性
- pageScope:页面范围,即pageContext范围
- requestScope:请求范围
- sessionScope:会话范围
- applicationScope:上下文范围
- 2个与请求头有关的内置对象
- header:输出某一个请求头的值。
- headerValues:如果某个请求头的值有多个,则使用headerValues返回一个数组
- 2个其他内置对象:cookie、initParam
- cookie:用来获取cookie的值
- initParam:用来输出上下文参数的值
- 1个特殊的内置对象pageContext
- EL中的pageContext对象可以调用PageContext类中所有符合规范的getXxx方法
EL运算符
- 算术运算符
- ${19+2} <br>
- ${19-2} <br>
- ${19*2} <br>
- ${19/2} <br>
- ${19%2} <br>
- 比较运算符
- = = 或eq表示等于
- != 或ne表示不等于
- < 或lt表示小于
- > 或gt表示大于
- <= 或le表示小于等于
- >= 或ge表示大于等于
- 逻辑运算符
- &&或and表示交集,两个值都是true才返回true。
- ||或or表示并集,两个值只要有一个是true,即返回true。
- !或not表示非
- 其他运算符
- empty运算符:判断值是否为null,如果是null,返回true,否则返回false。
- 关系运算符:${A?B:C}如果A为true,则执行B,如果A为false,则执行C。
- ()运算符:通过()可改变优先级。
EL中提供.和[]两种操作符来获得数据
如下面的两行代码等同:
${requestScope.cust2.custname}<br>
${requestScope["cust2"]["custname"]}
在某些情况下,却只能使用[]。
数组或集合的索引,如:
${paramValues.hobbies[0]}<br>
${requestScope.list[1].custname}<br>
属性值中包括-或者.等非字母或数字的字符。
不合法的EL:${param.user_name}
合法的EL:${param[“user_name”]}
值得注意的是,常量可以使用“”引用,也可以用单引号‘’引用。
属性值不是常量,而是变量。如paramName是变量,其具体值可能是name,可能是date等。
不合法的EL:${param.paramName}
合法的EL:${param[paramName]}
EL除了可以方便的获取数据外,还可以方便地进行数据类型转换
在EL中,对null值不显示,也不会抛出异常
在表达式中,对null值要么直接显示,要么抛出异常
EL(Expression Language)表达式语言的更多相关文章
- EL(Expression Language)和JSTL标签(JSP Standard Tag Library)
一.EL表达式: Expression Language提供了在 JSP 脚本编制元素范围外(例如:脚本标签)使用运行时表达式的功能.脚本编制元素是指页面中能够用于在JSP 文件中嵌入 Java代码的 ...
- JSP中的EL (Express Language表达式语言)
EL语言的目的: 用于无java代码的JSP页面 创建el1.jsp,el2.jsp el1.jsp <%@ page language="java" contentType ...
- 表达式语言EL
表达式语言EL 表达式语言 EL(Expression Language,表达式语言)主要是用在JSP页面中,用来辅助我们产生无脚本的JSP页面,此处的脚本指的是JSP中的Java代码. EL的语法是 ...
- EL表达式语言
EL (Expression Language) 目的:为了使JSP写起来更加简单.表达式语言的灵感来自于 ECMAScript 和 XPath 表达式语言,它提供了在 JSP 中简化表达式的方法. ...
- 【JSP】EL表达式语言
EL简介 EL语言原本是JSTL1.0中的技术(所以EL和JSTL配合如此亲密和默契也就是自然的了),但是从JSP2.0开始(JSTL1.1)就分离出来纳入了JSP的标准了.因此EL不需要任何jar包 ...
- 13EL表达式语言
EL表达式语言 EL表达式语言 JSP用于在页面上显示动态内容,通常需要在JSP页面中嵌入Java脚本以完成复杂功能.但大量的Java脚本使得JSP页面难以维护.一种类似JavaScript语言—EL ...
- EL表达式Expression Language
表达式语言Expression Language目的:简化jsp代码 EL内置对象 1.pageContext2.pageScope3.requestScope4.sessionScope5.appl ...
- 表达式语言 Expression Language
JSP 2.0最重要的特性之一就是表达式语言 (EL),JSP用户可以用它来访问应用程序数据.由于 受到ECMAScript和XPath表达式语言的启发,EL也设计 成可以轻松地编写免脚本的JSP页面 ...
- Spring学习总结(四)——表达式语言 Spring Expression Language
SpEL简介与功能特性 Spring表达式语言(简称SpEL)是一个支持查询并在运行时操纵一个对象图的功能强大的表达式语言.SpEL语言的语法类似于统一EL,但提供了更多的功能,最主要的是显式方法调用 ...
随机推荐
- [luogu P3391] 文艺平衡树
[luogu P3391] 文艺平衡树 题目背景 这是一道经典的Splay模板题——文艺平衡树. 题目描述 您需要写一种数据结构(可参考题目标题),来维护一个有序数列,其中需要提供以下操作:翻转一个区 ...
- qtp type和set方法的区别
type模拟键盘输入,是一个字符一个字符的输入. set是整个输入框一起置值. 例如:winedit中输入a后,再用type输入b,结果就是ab 如果用set输入a后,再用set输入b,结果就是b. ...
- VNPY 软件架构分析
VNPY 架构设计文档 版本日志: 一. 引言 编写目的: 该软件概要设计说明书是“VNPY”开发中的重要文献资料,所完成的工作是将需求说明书中的数据流图转化成软件结构和数据结构,为后续进行详细设计说 ...
- 安装vue-cli时-4058报错的解决方法
一.报错信息 安装vue-cli时-4058报错 二.解决办法 1.安装淘宝镜像 npm --registry https://registry.npm.taobao.org info undersc ...
- oracle如何调试存储过程
oracle如果存储过程比较复杂,我们要定位到错误就比较困难,那么可以存储过程的调试功能 先按简单的存储过程做个例子,就是上次做的存储过程(proc_test) 1.先在数据库的procedures文 ...
- Python-接口自动化(六)
接口基础知识(六) (七)接口 1.接口:外部系统与本系统之间以及系统内部的各个子系统间,以约定标准提供的服务,包括对外提供的接口/对外提供的接口. 不同的请求协议:http webservice ...
- 网络请求get和post的区别
网络请求get和post的区别 其实本文更应该放在HTTP相关的分类,但是目前我并没有开设这一个分类专栏,so临时储存在HTML分类吧 Get和post是HTTP请求的两种基本方式 get是从服务器上 ...
- 多线程之 Thread类
一.多线程第一种方式的实现步骤(继承Thread类) 代码演示: 1.定义MyThread类,继承Thread类 2.重写了里面的run方法,在run方法中定义线程要执行的任务 public clas ...
- Android 偏门xml属性
在 recycleView listview scroview 等等 活动的时候会出现蓝边 android:overScrollMode="never" 用次属性可以去掉 fadi ...
- 一个C++右值引用的问题
暂时先不更新前一篇文章了,感觉那个文章要写好久.累死. 今天说一说C++右值引用的一个问题. 这个问题的发现也是很偶然的. 来一段毫无意义但是能证明问题的代码: std::string &&a ...