转:EL表达式的11个内置对象

原文地址:https://blog.csdn.net/qq_17045385/article/details/54799998

EL是JSP内置的表达式语言

JSP2.0开始,不让再使用Java脚本,而是使用EL表达式和动态标签来代替Java脚本

############EL替代的是<%=... %>,也就是说EL只能做输出###########

EL可以输出的东西都在11个内置对象中,11个内置对象,其中10个是Map,只有pageContext不是Map,它就是PageContext类型,EL所有内置对象如下:

 

pageScope:获取pageContext域属性,相当于pageContext.getAttribute("xxx")

requestScope:获取request域属性,相当于request.getAttribute("xxx")

sessionScope:获取session域属性,相当于session.getAttribute("xxx")

applicationScope:获取application域属性,相当于application.getAttribute("xxx")

param:对应参数,它是一个Map,其中key是参数,value是参数值,适用于单值的参数,相当于request.getParameter("xxx")

paramValues:对应参数,她是一个Map,其中key是参数,value是多个参数值,适用于多值的参数,相当于request.getParameterValues("xxx")

header:对应请求头,它是一个Map,其中key表示头名称,value是单个头值,适用于单值的请求头,相当于request.getHeader("xxx")

headerValues:对应请求头,它是一个Map,其中key表示头名称,value是多个头值,适用于多值的请求头,相当于request.getHeaders("xxx")

initParam:获取web.xml中<context-param>内的参数,${ initParam.xxx},xxx就是<param-name>标签内的值,进而得到<param-value>中的值

cookie:用于获取cookie,Map<String,Cookie>,其中key是cookie的name,value是cookie对象,例如${cookie.JSESSIONID.value }就是获取sessionId

pageContext:可以获取JSP九大内置对象,相当于使用该对象调用getxxx()方法,例如pageContext.getRequest()可以写为${pageContext.request)

      ######这也解释了 为什么要通过pageContext来获取其他 jsp 内置对象

 

EL表达式在获取Map的值或Bean的属性值是,可以使用“点”的方法,也可以使用“下标”的方法。

${initParam.a}与${initParam['a']},它们是完成的东西相同的。但是,如果Map的键或Bean的属性名中包含下划线或横岗时,那么就必须使用“下标”方法,例如:${initParam['a_a']}
---------------------
作者:星空dream
来源:CSDN
原文:https://blog.csdn.net/qq_17045385/article/details/54799998
版权声明:本文为博主原创文章,转载请附上博文链接!

 

Jsp内置对象为什么要通过pageContext获取

最佳(实际并不)回答中,网友评论中的回答:

烦恼收发室 2017-06-06 22:06
request 和 pageContext 都是 JSP 的内置对象(9个对象),可在 JSP 脚本内部直接使用 EL 用来代替脚本,提供了11个内置对象。包含 pageContext,但是不包含 request pageContext 又可以获取其他8个对象,又可以代理其他域。 所以再 EL 表达式内,需要这样使用 btw,JSTL 是 EL 表达式的一种标签形式的扩展
另外参考:JSP的学习(7)——九大隐式对象之pageContext对象
如果是写JSP,其实在JSP页面中是不能有Java代码的,所有的Java代码都需要使用自定义标签来封装,因此,其实这些方法都是在自定义标签中使用,而在自定义标签中,我们就无法使用另外八大隐式对象了,只能使用pageContext,因此在自定义标签中必须利用pageContext来获取其他隐式对象。
另外参考:
jsp的三种自定义标签 写法示例   
学会怎样使用Jsp 内置标签、jstl标签库及自定义标签
这两篇还没好好看

转载于:https://www.cnblogs.com/mumu122GIS/p/9901360.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/537552.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python需要配置环境变量吗_python为什么会环境变量设置不成功

学习python编程&#xff0c;首先要配置好环境变量。本文主要讲解python的环境变量配置&#xff0c;在不同版本下如何安装 Windows 打开Python官方下载网站 https://www.python.org/downloads/release/python-370/ x86:表示是32位电脑 x86-64:表示是64位电脑 目前Python版本分为…

一维数组、二维数组、三维数组、四维数组、多维数组的理解

以图书馆来举例 一维数组是一条线 二维数组是一页纸 三维数组是一本书 四维数组是书架 五维数组是图书室2201&#xff08;好几个书架&#xff09; 六维数组是图书馆某一层&#xff0c;2楼/3楼&#xff0c;好几个图书室 七维数组是整个图书馆 第N维数组是宇宙..................…

线性筛

我就是我&#xff0c;一辈子都学不会线性筛的菜鸡 一篇非常好的博客转载于:https://www.cnblogs.com/yzxverygood/p/9907281.html

在资源使用状况视图中查看资源的负荷情况

只有工时类资源才会出现过度分配&#xff0c;因为工时类资源通常指组织内部的人力资源或者机械设备等&#xff0c;这些资源通常都有数量上的瓶颈&#xff0c;也只有工时类资源才会在【资源工作表】中设置它的最大单位和资源可用性&#xff0c;这就限制了它在不同时间段内的可用…

python常用单词自由且开放_python常用英语单词词汇 unit7

1. Darcula IntelliJ IDEA自带的黑色主题名称&#xff0c;Android Studio是基于IntelliJ IDEA的。 2. Appearance /prns/ n. 外观&#xff1b; 3. Custom /kstm/ n. 习惯&#xff1b; 4. UI abbr. 用户界面&#xff08;user interface&#xff09; 5.Terminate /tmnet/ 终止、结…

2018.10.29-2018.11.4

简述osi七层模型和TCP/IP五层模型应用层OSI 参考模型中最靠近用户的一层&#xff0c;是为计算用户提供应用接口&#xff0c;也为用户直接提供网络服务。常见的应用层网络服务协议有&#xff1a;HTTP,HTTPS,FTP,POP3,SMTP等表示层表示提供各种用于应用层数据编码和转换功能&…

CSV文件转Excel后数字自动转换成科学计数法的解决方法

CSV文件用Excel打开后&#xff0c;长度超过11位的数字自动转换成科学计数法显示&#xff0c;末尾数字变成“0000”&#xff0c;如何解决这一问题&#xff1f; 以“老劳模系统数据.CSV”为例&#xff0c;身份证码是科学计数法了 第一步&#xff1a;新建excel&#xff0c;用 off…

python 小说 云_python小说网站

广告关闭 腾讯云11.11云上盛惠 &#xff0c;精选热门产品助力上云&#xff0c;云服务器首年88元起&#xff0c;买的越多返的越多&#xff0c;最高返5000元&#xff01; python爬虫之小说网站--下载小说(正则表达式)思路:1. 找到要下载的小说首页,打开网页源代码进行分析(例:htt…

数据库导出到excel解决科学计数法问题

用Navicat等工具导出数据到excel的时候&#xff0c;身份证等超过11位的数字会自动转换成科学计数法&#xff0c;末尾数字变成“0000”。如何解决&#xff1f; 解决方式&#xff1a;给超过11位的数字末尾添加 \t 查询的时候&#xff0c;给相关字段添加 \t SELECT name,CONCAT…

6.6(java学习笔记)文件分割(IO综合例子)

基本思路&#xff1a; 文件分割&#xff1a;将一个文件分割成若干个独立的文件。 设置分割后小文件文件的字节数&#xff0c;然后读取被分割文件&#xff0c; 将对应的字节数写入分割后的小文件中。 使用seek定位下一次读取位置。 文件合并&#xff1a;将分割后的若干的文件合并…

小米MIUI关闭内容中心通知

被MIUI的内容中心打扰了许久&#xff0c;终于找到彻底关闭它的方式。 这个内容中心&#xff0c;在应用列表里找不到卸载&#xff0c;在通知管理里也找不到&#xff0c;小米把它藏得深。 关闭内容中心通知 第一步&#xff0c;先进入内容中心&#xff0c;然后切换到后台&#…

python编码器_自编码器和分类器python

展开全部 你好&#xff0c;下面是一个keras的softmax分类器自编码器的python代码。你需要安装e5a48de588b662616964757a686964616f31333431343665最新的theano1.0.4才可以跑。import os; os.environ[KERAS_BACKEND] theano import keras from keras.datasets import mnist fro…

Java虚拟机-第二篇-GC算法与内存分配策略

2019独角兽企业重金招聘Python工程师标准>>> GC引入 在Java的运行时数据区中&#xff0c;程序计数器、虚拟机栈、本地方法栈三个区域都是线程私有的&#xff0c;随线程而生&#xff0c;随线程而灭&#xff0c;在方法结束或线程结束时&#xff0c;内存自然就跟着回收…

python在函数内部有没有办法定义全局变量_主函数内部的全局变量python

你想要什么是不可能的*。你可以在全局命名空间中创建一个变量&#xff1a; myglobal "UGHWTF" def main(): global myglobal # prevents creation of a local variable called myglobal myglobal "yu0 fail it" anotherfunc() def anotherfunc(): print…

软件项目经理应该具备的心态

我们&#xff08;项目经理&#xff09;必须认识到有些现实是无法改变的&#xff1a; 1.市场前期都会过度承诺 2.公司是要赚钱的&#xff0c;仅仅有虚名但不赚钱的事情公司是不会真正持久的 3.任何公司都是资源不足的 4.任何公司都有或多或少的管理问题&#xff0c;没有问题…

Caffe学习记录(十一) ICNet分割网络学习

ICNet 是一个既考虑性能&#xff0c;又考虑准确率的分割网络&#xff0c;包含了语义分割和边缘精确分割&#xff0c;因为偶然看到就简单的了解一下&#xff0c;记录下来 论文是: ICNet for Real_time Semantic Segmentation on High Resolution Images&#xff0c;整篇文章都在…

如何利用python自动化办公项目_python办公自动化:自动进行word文档处理和排版

上节python办公自动化:自动打开word文档我们一起学会了在python里打开并保存一个word文档。这节我们将会学会如何利用python进行文本处理和将其在word里进行排版等技巧。python进行文本处理和将其在word里进行排版等技巧 使用文本 要有效地处理文本&#xff0c;首先要了解一些块…

不同项目组织结构间的区别

项目组织结构分 职能型 项目型 矩阵型 弱矩阵型 平衡矩阵 强矩阵 职能型 场景举例&#xff1a; 去饭店吃饭。 饭店A&#xff0c;门口宣传接待一组人&#xff0c;进店了&#xff0c;换另一组人安排就坐点餐&#xff0c;过一会儿&#xff0c;有专人上菜...... 这是职能型&#x…

PMO在组织结构中的作用

项目管理办公室是企业设立的一个职能机构名称&#xff0c;也有的称作项目管理部、项目办公室或项目管理中心等&#xff0c;英文为&#xff1a; Project Management Office &#xff0c;缩写简称&#xff1a;PMO。 PMO是在组织内部将实践、过程、运作形式化和标准化的部门&…

python支持多种编程范式吗_Python3学习之路~6.1 编程范式:面向过程 VS 面向对象...

编程范式 编程是程序员用特定的语法数据结构算法组成的代码来告诉计算机如何执行任务的过程&#xff0c;一个程序是程序员为了得到一个任务结果而编写的一组指令的集合&#xff0c;正所谓条条大路通罗马&#xff0c;实现一个任务的方式有很多种不同的方式&#xff0c;对这些不同…