在EL中提供了4个用于访问作用域范围的隐含对象,即pageScope、requestScope、sessionScope和applicationScope。应用这4个隐含对象指定所要查找的标识符的作用域后,系统 将不再按照默认的顺序(page、request、session以及application)来查找相应的标识符。

(1)pageScope隐含对象

该对象用于返回包含page(页面)范围内的属性值的集合,返回值为java.util.Map对象。

例:通过pageScope隐含对象读取page范围内的JavaBean的属性值。

①创建一个名称为UserInfo的JavaBean,并将其保存到com.wgh包中。在该JavaBean中包含一个name属性,具体代码如下:

 package com.wgh;
public class UserInfo {
private String name = ""; //用户名
/**
* 函数名称:setName
* 函数作用:name属性对应的set()方法
* @param name
*/
public void setName(String name) {
this.name = name;
}
/**
* 函数名称:getName
* 函数作用:name属性对应的get()方法
* @return name
*/
public String getName() {
return name;
}
}

②编写index_pageScope.jsp文件,在该文件中应用<jsp:useBean>动作标识,创建一个page范围内的JavaBean实例,并设置name属性的值为wgh;同时在<body>标签中应用pageScope隐含对象获取该JavaBean实例的name属性值,index_pageScope.jsp文件中的代码如下:

 <%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<jsp:useBean id="user" scope="page" class="com.wgh.UserInfo" type="com.wgh.UserInfo">
<jsp:setProperty name="user" property="name" value="java web从入门到精通"></jsp:setProperty>
</jsp:useBean>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>通过pageScope隐含对象读取page范围内的JavaBean的属性值</title>
</head>
<body>
${pageScope.user.name }
<br>
</body>
</html>

运行结果:

(2)requestScope隐含对象

requestScope隐含对象用于返回包含request请求范围内的属性值的集合,返回值为java.util.Map对象。

例:要获取保存在request范围内的userName变量,可以使用一下代码:

 <%
request.setAttribute("userName","mr"); //定义request范围内的变量userName
%>
${requestScope.userName}

(3)sessionScope隐含对象

sessionScope隐含对象用来返回包含session会话范围内的属性的集合,返回值为java.util.Map对象。

例:要获取保存在session范围内的manager变量,可以使用下面代码:

 <%
session.setAttribute("manager","mr"); //定义session范围内的变量marager
%>
${sessionScope.manager}

(4)applicationScope隐含对象

applicationScope隐含对象用于返回包含application应用范围内的属性值的集合,返回值为java.util.Map对象。

例:要获取保存在application范围内的message变量,可以使用下面的代码:

 <%
application.setAttribute("message","欢迎学习java"); //定义application范围内的变量message
%>
${applicationScope.message}

EL的隐含对象 (二)【访问作用域范围的隐含对象】的更多相关文章

  1. 基于.NET的CAD二次开发学习笔记二:AutoCAD .NET中的对象

    1.CAD对象:一个CAD文件(DWG文件)即对应一个数据库,数据库中的所有组成部分,看的见(包括点.多段线.文字.圆等)和看不见(图层.线型.颜色等)的都是对象,数据库本身也是一个对象. 直线.圆弧 ...

  2. 从零开始学C++之对象的使用(二):四种对象生存期和作用域、static 用法总结

    一.四种对象生存期和作用域 栈对象 隐含调用构造函数(程序中没有显式调用) 堆对象 隐含调用构造函数(程序中没有显式调用),要显式释放 全局对象.静态全局对象 全局对象的构造先于main函数 已初始化 ...

  3. JSP运行过程 JSP脚本 静态动态包含 jsp指令 jsp内置对象jsp四大作用域 jsp动作元素 EL表达式 JSTL 设计模式 JSP开发模式 EL内置对象

    Day38 JSP JSP的运行过程具体如下: (1)客户端发出请求,请求访问JSP文件. (2)JSP容器先将JSP文件转换成一个Java源文件(Java Servlet源程序),在转换过程中,如果 ...

  4. “Zhuang.Data”轻型数据库访问框架(二)框架的入口DbAccessor对象

    目录: “Zhuang.Data”轻型数据库访问框架(一)开篇介绍 “Zhuang.Data”轻型数据库访问框架(二)框架的入口DbAccessor对象 先来看一段代码 DbAccessor dba ...

  5. JVM高级特性-二、JVM在堆中对象的分配、布局、访问过程

    前面介绍了jvm运行时数据区域后,下面讲解下对内存中数据的其他细节,看他们是如何创建.布局及访问的 一.对象的创建 1.对象的分配 对象的创建分配方式主要有两种:指针碰撞和空闲列表 指针碰撞: 假设堆 ...

  6. EL的隐含对象(一)【页面上下文对象】

    页面上下文对象为pageContext,用于访问JSP内置对象(例如:request.response.out.session.exception.page等)和ServletContext.在获取到 ...

  7. jsp九大内置对象和四大作用域

    看到网上一些Jsp内置对象介绍的都不是很全,今天我把各位大神的整理了一下. JSP九大对象:内置对象(又叫隐含对象,有9个内置对象):不需要预先声明就可以在脚本代码和表达式中随意使用. 一.reque ...

  8. Java Web(五) JSP详解(四大作用域九大内置对象等)

    前面讲解了Servlet,了解了Servlet的继承结构,生命周期等,并且在其中的ServletConfig和ServletContext对象有了一些比较详细的了解,但是我们会发现在Servlet中编 ...

  9. JSP九大内置对象和四大作用域和Servlet的三大作用域对象

    一.JSP九大内置对象:内置对象(又叫隐含对象,有9个内置对象):不需要预先声明就可以在脚本代码和表达式中随意使用 内置对象特点: 由JSP规范提供,不用编写者实例化. 通过Web容器实现和管理 所有 ...

随机推荐

  1. Vue SSR 配合Java的Javascript引擎j2v8实现服务端渲染2创建Vue2+webpack4项目

    前提 安装好nodejs并配置好环境变量,最好是 node10,https://nodejs.org/en/download/ 参考我之前的文章 debian安装nodejs Yarn &&a ...

  2. Java向服务端转身 系统平台所对应的机器语言 虚拟CPU的机器语言字节码 bytecode

    小结: 1.虚拟CPU的模拟器:java虚拟机 JVM Java将虚拟机(VM)作为插件集成到浏览器中,将编译后的Java程序(Applet)在虚拟机上运行,这种技术 当初是为了增强浏览器的功能. J ...

  3. FW--tomcat bi-laternal https and keytool

    说明:按照本文中以下内容配置https,猫server.xml中clientAuth=false,单向验证的时候,网页中可以访问:当clientAuth=true进行双向验证的时候,网页中不可以访问: ...

  4. [dpdk] dpdk --lcores参数

    dpdk程序的命令行参数 --lcores可以设置lcore到CPU processer的多对多映射关系. 这样既可以提供CPU processor的伸缩扩展,同时也保证了EAL thread的运行环 ...

  5. Bootstrap3隐藏滑动侧边栏菜单代码特效

    链接:https://pan.baidu.com/s/1syV3ZFg-RqfCv0HS5K0vug 提取码:yjex

  6. cookie 和 token 的理解

    HTTP协议本身是无状态的,所以需要一个标志来对用户身份进行验证 1.cookie 用户登录成功后,会在服务器存一个session,同时发送给客户端一个 cookie 数据需要客户端和服务器同时存储 ...

  7. 帝国cms内容关键字自动加链接且设置内容关键字只替换一次

    网站上线前先设置一些内部链接对后期的优化排名很有帮助,帝国cms也可以设置文章中的关键字自动加链接,但是要注意一下关键词替换次数,最好是1次. 怎么操作呢?分两步完成 1.帝国cms文章关键字自动加链 ...

  8. RN animated组动画

    代码: export default class AnimationGroupScene extends Component { constructor() { super() ) ) ) } com ...

  9. UITextView设置placeholder

    下面是我的代码,可以直接拿来用 #import <UIKit/UIKit.h> @interface CustomTextView : UITextView @property(nonat ...

  10. 【LeetCode每天一题】3Sum Closest(最接近的三数和)

    Given an array nums of n integers and an integer target, find three integers in nums such that the s ...