一。EL表达式:
1.命令表达式:
${作用域对象别名.共享数据}
2.命令作用:
1)EL表达式是EL工具包提供一种特殊命令格式【表达式命令格式】
2)EL表达式在JSP文件上使用
3)负责在JSP文件上从作用域对象中获取共享数据并写入响应体中
 
二。EL表达式----作用域对象别名
1.JSP文件可以使用的作用域对象
1)ServletContext application:全局作用域对象
2)HttpSession session:会话作用域对象
3)HttpServletRequest request:请求作用域对象
4)PageContext pageContext:当前页作用域对象,这是Jsp文件里独有的作用域对象。 Servlet中不存在。在当前页作用域对象存放的共享数据仅能在当前JSP文件中使用
在真实开发中,主要用于JSTL标签与JSP文件之间共享数据
JSTL ----------------> pageContext --------------> JSP
2.EL表达式提供作用域对象别名
-------------------------------------------------------------------------------------------------------
| JSP | EL |
| application | ${appilcationScope.共享数据名} |
| session | ${sessionScope.共享数据名} |
| request | ${requestScope.共享数据名} |
| pageCOntext | ${pageScope.共享数据名} |
-------------------------------------------------------------------------------------------------------
 
三。EL表达式将引用对象属性写入到响应体中
1.命令格式:${作用域对象别名.共享属性名.属性名}
2.命令作用:从作用域对象读取指定共享数据
3.属性名:一定要与引用类型属性名完全一致(大小写)
4.EL表达式没有提供遍历集合的方法,因此无法从作用域中读取集合内容输出
 
四。EL表达式简化
1.命令格式:${公共数据名}
2.命令作用:EL表达式允许开发人员开发时省略作用域对象别名
3.工作原理:
EL表达式简化版由于没有指定作用域对象,所以执行时采用【猜】的算法
首先到【pageContext】中定位共享数据,如果存在直接读取输出并结束执行
否则,到【request】定位,接着是【session】,再到【application】
如果都没有则返回null
4.存在的隐患:
容易减低程序执行的速度
导致数据定位错误
5.应用场景/设计目的:
简化从pageContext读取数据并输出的难度
五。EL运算表达式
1.前提:在JSP文件有时需要对读取的共享数据进行一番运算之后,再将运算结果写入到响应体中
2.运算表达式:
1)数学运算:+ - * /
2)关系运算: > = == < <= !=
3)逻辑运算:
六。EL表达式提供内置对象
1、param
1.命令格式:${param.请求对象}
2.命令作用:
从通过请求对象读取当前请求包中请求参数内容并将请求参数内容写入到响应体中
3.代替命令: index.jsp
发送请求:
<%
String userName = req.getParmeter("userName");
String password = req.getParmeter("password");
%>
<%=userName%>
<%=password%>
 
1、paramValues
1.命令格式:${paramValues.请求参数名[下标]}
2.命令作用:
如果浏览器发送的请求参数关联多喝值,此时可以通过paramValues读取请求参数下指定位置的值并写入到响应体中
3.代替命令:
此时pageNo请求包以数组形式存在,pageNo:[1,2,3]
<%
String a[] = req.getparamerValues("pageNo");
%>
第一个值:<%=a[0]%>
第二个值:<%=a[1]%>
七。EL中的常见异常
javax.el.PropertyNotFoundException:在对象中没有找到指定属性
 

JavaWeb学习--EL表达式的更多相关文章

  1. javaWEB与EL表达式

    EL表达式1. EL是JSP内置的表达式语言!  * jsp2.0开始,不让再使用java脚本,而是使用el表达式和动态标签来替代java脚本!  * EL替代的是<%= ... %>,也 ...

  2. JavaWeb基础—EL表达式与JSTL标签库

    EL表达式: EL 全名为Expression Language.EL主要作用 获取数据(访问对象,访问数据,遍历集合等) 执行运算 获取JavaWeb常用对象 调用Java方法(EL函数库) 给出一 ...

  3. 【JavaWeb】EL表达式&过滤器&监听器

    EL表达式和JSTL EL表达式 EL表达式概述 基本概念 EL表达式,全称是Expression Language.意为表达式语言.它是Servlet规范中的一部分,是JSP2.0规范加入的内容.其 ...

  4. Javaweb之EL表达式

    1.EL表达式简介 EL全名为Expression Language.EL的主要作用为: 获取数据:EL表达式主要用于替换jsp页面中的脚本表达式,以从各种类型的web域中检索java对象,获取数据. ...

  5. IT兄弟连 JavaWeb教程 EL表达式中的运算

    EL语言支持算符运算符.关系运算符和逻辑运算符等,以完成常见的数据处理操作.所有的运算符说明见表7.2. 表2  El表达式中的运算符

  6. IT兄弟连 JavaWeb教程 EL表达式中的内置对象

    EL语言定义了11个隐含对象,它们都是java.util.Map类型,网页制作者可通过它们来便捷地访问Web应用中的特定数据.表1对这11个隐含对象做了说明. 1  EL表达式中的内置对象 这11个隐 ...

  7. IT兄弟连 JavaWeb教程 EL表达式获取对象的属性以及数组的元素

    使用${对象名.属性名} EL表达式语言可以使用点号运算符"."来访问对象的属性,例如表达式${customer.name}表示customer对象的name属性. 使用${对象名 ...

  8. 【JavaWeb】EL表达式

    EL表达式 EL表达式语言,用于简化JSP的输出: EL表达式的基本语法:${表达式}: 示例:<h1>学生姓名:${student.name}</h1> 作用域对象 忽略书写 ...

  9. JavaWeb 之 EL表达式

    EL 表达式 一.概述 1.概念 EL 表达式:Expression Language 表达式语言. 2.作用 替换和简化 jsp 页面中 java 代码的编写. 3.语法格式 ${表达式} 4.注意 ...

  10. 【JavaWeb+Echarts+EL表达式】用图表形式展示数据

    1. Echarts环境配置 https://www.echartsjs.com/zh/download.html 选择需要的,然后等待Build完成之后,就会自动弹出下载框啦! 把下载好的js放在w ...

随机推荐

  1. Python-celery介绍与快速上手

    1.celery介绍:   celery是一个基于Python开发的模块,可以帮助我们在开发过程中,对任务进行分发和处理.               详细介绍取自:Python之celery的简介与 ...

  2. Python基于粒子群优化的投资组合优化研究|附代码数据

    全文链接:http://tecdat.cn/?p=6811 最近我们被客户要求撰写关于粒子群优化的研究报告,包括一些图形和统计输出. 我今年的研究课题是使用粒子群优化(PSO)的货币进位交易组合优化. ...

  3. [*]Is L2 Physics-Informed Loss Always Suitable for Training Physics-Informed Neural Network?

    NeurIPS 2022 本篇工作对PINN中的物理损失进行了探究,作者认为L2损失并不总是适用于训练PINN.并从PDE解的稳定性角度给出了理论性的说明.读了这篇文章,感觉自己的毕业论文做的十分浅显 ...

  4. mybatis-关联查询1-一对多关联查询

    或者多表单独查询方式

  5. jQuary学习(一)

    一.jQuary简介 jQuery是继prototype之后又一个优秀的Javascript框架.其宗旨是--WRITE LESS,DO MORE,写更少的代码,做更多的事情. jQuery能够使用户 ...

  6. JDBC之Statement

    Statement 目录 Statement Statement Statement概述 要执行的SQL分为两类 查询 增删改 Statement继承体系 SQL注入问题 SQL注入问题解决 获取得到 ...

  7. mixup: BEYOND EMPIRICAL RISK MINIMIZATION概述

    参考简书,github 0.前言 相关资料: arxiv github 论文解读 论文基本信息: 领域:数据增强 发表时间:arxiv 2022(2022.5.1) 1.针对的问题 大型的深度神经网络 ...

  8. HTTP请求报文(请求行,请求头,请求体)

    HTTP协议 1.简介 HTTP协议(Hyper Text Transfer Protocol,超文本传输协议),是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的 ...

  9. JS学习-异步JS

    异步JS setTimeout() 我们希望传递给setTimeout()中运行的函数的任何参数,都必须作为列表末尾的附加参数传递给它. function sayHi(who) { alert('He ...

  10. docker-compose之memcached

    新建docker-compose.yml,写入以下内容 memcached: image: memcached:latest ports: - 11211:11211 启动服务 docker-comp ...