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.精确地访问存储对象 ...
随机推荐
- 谈谈模型融合之一 —— 集成学习与 AdaBoost
前言 前面的文章中介绍了决策树以及其它一些算法,但是,会发现,有时候使用使用这些算法并不能达到特别好的效果.于是乎就有了集成学习(Ensemble Learning),通过构建多个学习器一起结合来完成 ...
- 急速搭建 Serverless AI 应用:为你写诗
前言 首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传.函数计算 ...
- JVM性能监测工具——VisualVM
Java本身自带了有好几个jvm监测工具,其中jconsole和jvisualvm这两个工具具有图形化界面,可以监测到cpu.类.线程.堆等一些参数,而且具有远程监控的能力. 启动:打开cmd命令窗口 ...
- 【uuid】- 唯一标识
2020-01-02 UUID ,Universally Unique Identifier ,通用唯一标识符. //定义一个生成 uuid 的方法const getUuid = () => { ...
- Ant Design中根据用户交互展示不同的标签
Ant Design中根据用户交互展示不同的标签 Ant Design使用的是React框架,那么我们先看代码: <Fragment> <a onClick={() => th ...
- Java String类相关知识梳理(含字符串常量池(String Pool)知识)
目录 1. String类是什么 1.1 定义 1.2 类结构 1.3 所在的包 2. String类的底层数据结构 3. 关于 intern() 方法(重点) 3.1 作用 3.2 字符串常量池(S ...
- 应届生/社招面试最爱问的几道Java基础问题
本文已经收录自笔者开源的 JavaGuide: https://github.com/Snailclimb ([Java学习+面试指南] 一份涵盖大部分Java程序员所需要掌握的核心知识)如果觉得不错 ...
- MD5:js,java,C#三种语言加密结果不同解决办法
最近遇到前端js MD5加密与后端C#与Java MD5加密结果不一致的问题,所以写个关于此问题的解决办法 前端js引用的md5类库,类库地址:https://blueimp.github.io/Ja ...
- [Debug]IOS微信浏览器不支持form表单的target=_blank
测试代码如下 <?php echo '<meta name="viewport" content="width=device-width,minimum-sc ...
- 【转】ArcGIS Server 10.1 动态图层—更改风格
在 ArcGIS Server REST API中我们可以通过向Graphicslayer中添加临时图元的方法来完成对显示结果的渲染:如果仅仅是更改原有地图服务显示风格,在ArcGIS10.1下使用动 ...