当前位置: 首页 > news >正文

EL表达式

  1. EL的概念

JSP表达式语言(EL)使得访问存储在JavaBean中的数据变得非常简单。

  1. EL的作用

用于替换作用域对象.getAttribute("name");

3. EL的应用(获取基本类型、字符串)

既可以用来创建算术表达式也可以用来创建逻辑表达式。在JSP EL表达式内可以使用整型数,浮点数,字符串,常量true、false,还有null。

  • ${scope.name}获取具体某个作用域中的数据

  • ${name}获取作用域中的数据,主机查找{pageContext、request、session、application}

4. EL的案例

4.1创建不相同的键名

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>Title</title>
</head>
<body><%request.setAttribute("key","value1");session.setAttribute("key2","value2");application.setAttribute("key3","value3");%><h2>通过作用域获取对象:</h2><h2><%=request.getAttribute("key")%></h2><h2><%=session.getAttribute("key2")%></h2><h2><%=application.getAttribute("key3")%></h2>
</hr><h2>通过El表达式获取数据:</h2><h2>${requestScope.key}</h2><h2>${sessionScope.key2}</h2><h2>${applicationScope.key3}</h2></h2><h2>通过El表达式2获取数据:</h2><!--通过EL表达式获取数据,${name}获取作用域中的数据,主机查找{pageContext、request,session.application}--><h2>${key}</h2><h2>${key2}</h2><h2>${key3}</h2>
</body>
</html>

运行结果:我的路径是创建一个el文件夹,jsp文件名为Eldemo01

4.2创建相同的键名得到的结果


<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>Title</title>
</head>
<body><%request.setAttribute("key111","value1");session.setAttribute("key111","value2");application.setAttribute("key111","value3");%><h2>通过作用域对象获取</h2><h2><%=request.getAttribute("key111")%></h2><h2><%=session.getAttribute("key111")%></h2><h2><%=application.getAttribute("key111")%></h2>
</hr>
//因为有不同的对象所以还是会获取<h2>通过el表达式获取数据</h2><h2>${requestScope.key111}</h2><h2>${sessionScope.key111}</h2><h2>${applicationScope.key111}</h2>
</hr>
//因为三个都是key111所以只能获取第一个值<h2>通过el表达式2获取数据</h2><h2>${key111}</h2><h2>${key111}</h2><h2>${key111}</h2>
</body>
</html>

运行结果:

5.EL和JSP脚本的区别是用存取不存的数据判断

  • <%=request.getAttribute() %>没有找到返回null

  • ${requestScope.name}没找到返回""

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>Title</title>
</head>
<body>
<%request.setAttribute("key111","value1");session.setAttribute("key222","value2");application.setAttribute("key333","value3");
%>
<h2>通过作用域对象获取</h2>
<%--获取的键不存在,返回为null--%>
<h2><%=request.getAttribute("key666")%></h2>
<h2><%=session.getAttribute("key666")%></h2>
<h2><%=application.getAttribute("key666")%></h2>
</hr>
<h2>通过el对象获取</h2>
<%--获取的键不存在,返回为null--%>
<h2>${requestScope.key666}</h2>
<h2>${sessionScope.key666}</h2>
<h2>${applicationScope.key666}</h2>
</body>
</html>

运行结果

http://www.lryc.cn/news/1644.html

相关文章:

  • 优先级队列(PriorityQueue 和 Top-K问题)
  • 计算机组成与设计04——处理器
  • IT行业那么辛苦,我们为什么还要选择它?
  • PyTorch学习笔记:nn.CrossEntropyLoss——交叉熵损失
  • 【VictoriaMetrics】什么是VictoriaMetrics
  • (第五章)OpenGL超级宝典学习:统一变量(uniform variable)
  • 数据存储技术复习(四)未完
  • Rust编码的信息窃取恶意软件源代码公布,专家警告已被利用
  • diffusers编写自己的推理管道
  • 计算机操作系统 左万利 第二章课后习题答案
  • CODESYS开发教程10-文件读写(SysFile库)
  • Linux安装redis
  • 计算机组成与体系结构 性能设计 William Stallings 第2章 性能问题
  • anaconda详细介绍、安装及使用(python)
  • 雅思经验(6)
  • CentOS9源码编译libvirtd工具
  • 搭建内网穿透
  • vue3组件库项目学习笔记(八):Git 使用总结
  • ISO7320FCQDRQ1数字隔离器LMG1025QDEETQ1半桥GaN驱动器
  • openmmlab 语义分割算法基础
  • 2023年深圳/东莞/惠州CPDA数据分析师认证报名入口
  • RabbitMQ-客户端源码之AMQChannel
  • 注意力机制(SE,ECA,CBAM) Pytorch代码
  • Vue2笔记03 脚手架(项目结构),常用属性配置,ToDoList(本地存储,组件通信)
  • Java程序的执行顺序、简述对线程池的理解
  • 【前言】嵌入式系统简介
  • React设计原理—1框架原理
  • (C00034)基于Springboot+html前后端分离技术的宿舍管理系统-有文档
  • Flink面试题
  • Python学习笔记