EL表达式(Exprission language)
EL介绍
Expressive Language, JSP2.0引入,简化jsp开发中对对象的引用,(可以直接读取对象的属性,不需要像之前java脚本那样去做,比较繁琐),使得访问存储在JavaBean中的数据变得非常简单。
基本语法
${表达式}
常见用法
根据其访问对象,可大体分成三类:访问数据(javabean里面的数据)及其各种表达式,访问EL的隐含对象(页面的对象),访问环境信息的隐含对象。
(1)访问数据及其各种表达式

访问数据
${userinfo.id} //1.访问userinfo的id属性。.和[]用于访问数据,二者等价。
${userinfo[id]}
${userinfo.[user-name]} //当属性名含有特殊符号时,就只能使用[],而不能${userinfo.user-name}
${arrBook[0]} //2.(假定arrBook为数组对象)访问request范围中的数组arrBook中的第一个元素
${goodsList[0]} //3.(假定goodsList为List对象)访问request范围中的goodsList的第一个元素 算术运算
${5/2} 或者 ${5 div 2} //5除以2
${17%3} 或者 %{17 mod 3} //17求余3
${1+2} //注意+无法实现两个字符串的拼接,只能做算术运算。 判空
${empty user1} //user1==null或者user1==""的话,都会返回true。 逻辑关系运算
${10==10} 或者 ${10 eq 10} //返回true
${10!=10} 或者 ${10 ne 10} //返回false
${10<10} 或者 ${10 lt 10} //返回false
${10>=10} 或者 ${10 ge 10} //返回true
${ true && true } 等价 ${"true" && "true"} //可知,字符串会转为Boolean进行处理。
${!true} 或者 ${not true} 条件运算
${empty user1? "user1为null或空":user1} //判断user1是否为空,然后输出对应的值。

(2)访问EL的隐含对象


1.获取页面上下文对象pageContext,可以访问jsp内置对象及其他们的属性值和方法。(request、response、out、session、application等)
注意:不可以通过pageContext对象获取保存到request范围内容变量。
${pageContext.response} //获取response对象
${pageContext.response.ContentType} //获取返回响应的内容类型。
${pageContext.session} //获取session对象
${pageContext.session.maxInactiveInterval} //获取session的有效时间的值 2.访问作用域范围的隐含对象
有四个:pageScope、requestScope、sessionScope、applicationScope
${pageScope.user.name} //获取页范围内的user对象的name属性值
${requestScope.user1} //如之前设置过<% request.setAttribute("user1","uuu"); %>
${sessionScope.user2} //如之前设置过<% session.setAttribute("user2","uuu"); %>
${applicationScope.user3} //如之前设置过<% application.setAttribute("user3","uuu"); %>

(3)访问环境信息的隐含对象
有六个:param对象, paramValues对象、header和headerValues对象、iniParam对象、cookie对象
<% Cookie cookie = new Cookie("user","uuu"); //使用response对象设置一个请求有效地cookie对象。
response.addCookie(cookie); %>
${cookie.user.value} //再使用EL获取该cookie对象的值
详情查看 :https://www.cnblogs.com/zadomn0920/p/javaweb.html
EL表达式(Exprission language)的更多相关文章
- EL表达式Expression Language
表达式语言Expression Language目的:简化jsp代码 EL内置对象 1.pageContext2.pageScope3.requestScope4.sessionScope5.appl ...
- 11 JSP/EL表达式/EL函数
JSP * 概述: JSP(Java Server Pages)与Java Servlet一样,是在服务器端执行的不同的是先由服务器编译部署成Servlet执行 * JSP的运行原 ...
- EL表达式与JSTL(C)标签
一.EL表达式: Expression Language提供了在 JSP 脚本编制元素范围外(例如:脚本标签)使用运行时表达式的功能.脚本编制元素是指页面中能够用于在JSP 文件中嵌入 Java 代码 ...
- JSP——JavaServer Page中的隐式对象(implicit object)、指令(directive)、脚本元素(scripting element)、动作(action)、EL表达式
目录 1.JSP概述 2.注释(comment) 2.1.JSP注释 2.2.HTML注释 3.隐式对象(implicit object) 3.1.隐式对象清单 3.2.request对象 3.3.o ...
- 一、jsp和Servlet基础理论及jstl和EL表达式用法
1.题外话:使用JSP有近一年半的时间了,但是开发量不大.昨天部门突然让做个读取EXCLE文件,然后在前台页面进行展示.并通过点击查看按钮可以对每条明细记录进行跳转后进行详情查看,并按照页面原型进行页 ...
- 2.EL表达式&JSTL标签库常用方法
1.EL表达式 Expression Language表达式语言,主要是代替jsp页面中的表达式脚本在jsp页面中进行数据的输出. 格式为${表达式} EL表达式输出Bean的普通属性.数组属性.Li ...
- EL(Expression Language)表达式语言
EL(Expression Language)表达式语言 EL的基本语法是以${开始,以}结束 为了能够方便地输出数据,EL提供了11个内置对象,其中 2个内置对象为了方便输出请求参数 param用来 ...
- JSP中的EL (Express Language表达式语言)
EL语言的目的: 用于无java代码的JSP页面 创建el1.jsp,el2.jsp el1.jsp <%@ page language="java" contentType ...
- EL表达式(Expression Language)
语法: ${Expression} 来取代难以维护的Java脚本元素,或笨拙的jsp:useBean和jsp:getProperty; 尤其重要的是,表达式语言支持下面的功能: 1.精确地访问存储对象 ...
随机推荐
- hexo+next 详细搭建
安装node node下载地址:http://nodejs.cn/download/ 具体安装方法,这里不做详写 安装完成可以通过node -v 查看安装是否生效和node的版本 我这里使用的是v10 ...
- 20191017-4 alpha week 2/2 Scrum立会报告+燃尽图 03
此作业要求参见https://edu.cnblogs.com/campus/nenu/2019fall/homework/9800 小组名称:“组长”组 组长:杨天宇 组员:魏新,罗杨美慧,王歆瑶,徐 ...
- $loj\ 6045$ [雅礼集训 $2017\ Day8$] 价 网络流
正解:网络流 解题报告: 传送门$QwQ$ 这题还,挺有趣的我$jio$得. 考虑依然先是照着最小割的模子建图呗,然后从意义上来分析,割一条边就相当于不吃一种减肥药/买一种药材.由已知得,买的药材数量 ...
- Bandicam(班迪录屏)高清视频录制工具
Bandicam(班迪录屏)简单好用的录屏幕,录游戏,录视频的功能强大的屏幕录像软件,比起其他软件其性能更加卓越. 与其他软件相比,用Bandicam录制的视频大小更小, 不仅保证原文件的质量.
- 低副瓣阵列天线综合2 matlab HFSS
接着继续研究阵列天线设计,得到了电流幅度分布或功率分布之后,就可以进行阵列设计或馈电网络设计了,之前利用HFSS仿真过单列的串馈天线,后面会继续复习熟悉一下,本次我找了一篇硕士论文利用威尔金森功分器来 ...
- STM321的SPI驱动遇到的一个坑!!
最近在做项目要用到FATFS文件驱动和SD卡驱动,SD卡驱动我用的是SPI的通信方式,在挂载文件系统是总是挂在失败了,花了一天时间反复检查,才发现SPI在接收时候卡死: 为了寻找问题的原因,整个人都快 ...
- Spring-cloud微服务实战【一】:微服务的概念与演进过程
本文是一个系列文章,主要讲述使用spring-cloud进行微服务开发的实战.在开始之前,我们先说一下从传统的单一部署架构到微服务的发展过程,以便让童鞋们更好的理解微服务的概念与演进过程. 1.单体架 ...
- 网络流 - 最大流构图入门 bzoj 1305
一次舞会有n个男孩和n个女孩.每首曲子开始时,所有男孩和女孩恰好配成n对跳交谊舞.每个男孩都不会和同一个女孩跳两首(或更多)舞曲.有一些男孩女孩相互喜欢,而其他相互不喜欢(不会“单向喜欢”).每个男孩 ...
- pair 数组
当有两个元素需要绑定在一起的时候可以用结构体 , 此时也可以用 pair 数组去替代结构体 . 定义 : pair<int, double> p1; //使用默认构造函数 pair< ...
- 线段相交的异或值 (线段树 or 优先队列)
VVQ 最近迷上了线段这种东西 现在他手上有 n 条线段,他希望在其中找到两条有公共点的线段,使得他们的异或值最大. 定义线段的异或值为它们并的长度减他们交的长度 输入描述: 第一行包括一个正整数 n ...