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,但提供了更多的功能,最主要的是显式方法调用 ...
随机推荐
- 【Python】Scrapy基础
一.Scrapy 架构 Engine(引擎):负责 Spider(爬虫).Item Pipeline(管道).Downloader(下载器).Scheduler(调度器)中的通讯和数据传递. Sche ...
- react和vue的不同
React严格上只针对MVC的view层,Vue则是MVVM模式 virtual DOM不一样,vue会跟踪每一个组件的依赖关系,不需要重新渲染整个组件树.而对于React而言,每当应用的状态被改变时 ...
- Python3+Django get/post请求实现教程
一.说明 之前写了一篇“Python3+PyCharm+Django+Django REST framework开发教程”,想着直接介绍rest就完了.但回过头来看,一是rest在解耦的同时将框架复杂 ...
- 彻底搞懂js原型与原型链
原生的原型链 function fn(){},fn 为 Function的一个实例,原型链为 null -> Object -> Function -> fn: fn.__proto ...
- jq鼠标事件
鼠标事件是在用户移动鼠标光标或者使用任意鼠标键点击时触发的. (1)click单击鼠标事件:click事件于用户在元素敲击鼠标左键,并在相同元素上松开左键时触发. $('p').cl ...
- 20180824fpreadforasp.net单元格类型绑定细则
if(!IsPostBack) { //刀具类型 ComboBoxCellType cbx_dj = new ComboBoxCellType(); // cbx_dj.ShowButton = tr ...
- Java 面试题集锦
都是一些非常非常基础的题,是我最近参加各大IT公司笔试后靠记忆记下来的,经过整理献给与我一样参加各大IT校园招聘的同学们,纯考Java基础功底,老手们就不用进来了,免得笑话我们这些未出校门的孩纸们,但 ...
- JS JQ 深拷贝之坑
之前做留言板的时候,我就被深拷贝坑了一次,这次做API管理系统,没想到又被深拷贝坑了一次. 最后,拷贝对象的时候,如果要用到对象里的prototype,一定要用$.extend(true,{},要拷贝 ...
- js 遍历数组
<!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <title> ...
- 正则表达式,grep,sed,
答案详见:http://www.cnblogs.com/linhaifeng/p/6596660.html 作业一:整理正则表达式博客 ^ # 行首定位 $ # 行尾定位 . # 匹配除换行符以外的任 ...