EL的隐含对象 (二)【访问作用域范围的隐含对象】

2024-06-20 02:08

本文主要是介绍EL的隐含对象 (二)【访问作用域范围的隐含对象】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在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属性,具体代码如下:

 1 package com.wgh;
 2 public class UserInfo {
 3     private String name = "";    //用户名
 4     /**
 5      * 函数名称:setName
 6      * 函数作用:name属性对应的set()方法
 7      * @param name
 8      */
 9     public void setName(String name) {
10         this.name = name;
11     }
12     /**
13      * 函数名称:getName
14      * 函数作用:name属性对应的get()方法
15      * @return   name
16      */
17     public String getName() {
18         return name;
19     }
20 }

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

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

运行结果:

(2)requestScope隐含对象

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

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

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

(3)sessionScope隐含对象

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

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

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

(4)applicationScope隐含对象

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

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

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

 

这篇关于EL的隐含对象 (二)【访问作用域范围的隐含对象】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1076801

相关文章

Kotlin 作用域函数apply、let、run、with、also使用指南

《Kotlin作用域函数apply、let、run、with、also使用指南》在Kotlin开发中,作用域函数(ScopeFunctions)是一组能让代码更简洁、更函数式的高阶函数,本文将... 目录一、引言:为什么需要作用域函数?二、作用域函China编程数详解1. apply:对象配置的 “流式构建器”最

在java中如何将inputStream对象转换为File对象(不生成本地文件)

《在java中如何将inputStream对象转换为File对象(不生成本地文件)》:本文主要介绍在java中如何将inputStream对象转换为File对象(不生成本地文件),具有很好的参考价... 目录需求说明问题解决总结需求说明在后端中通过POI生成Excel文件流,将输出流(outputStre

C#原型模式之如何通过克隆对象来优化创建过程

《C#原型模式之如何通过克隆对象来优化创建过程》原型模式是一种创建型设计模式,通过克隆现有对象来创建新对象,避免重复的创建成本和复杂的初始化过程,它适用于对象创建过程复杂、需要大量相似对象或避免重复初... 目录什么是原型模式?原型模式的工作原理C#中如何实现原型模式?1. 定义原型接口2. 实现原型接口3

使用Dify访问mysql数据库详细代码示例

《使用Dify访问mysql数据库详细代码示例》:本文主要介绍使用Dify访问mysql数据库的相关资料,并详细讲解了如何在本地搭建数据库访问服务,使用ngrok暴露到公网,并创建知识库、数据库访... 1、在本地搭建数据库访问的服务,并使用ngrok暴露到公网。#sql_tools.pyfrom

Java实现将byte[]转换为File对象

《Java实现将byte[]转换为File对象》这篇文章将通过一个简单的例子为大家演示Java如何实现byte[]转换为File对象,并将其上传到外部服务器,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言1. 问题背景2. 环境准备3. 实现步骤3.1 从 URL 获取图片字节数据3.2 将字节数组

Javascript访问Promise对象返回值的操作方法

《Javascript访问Promise对象返回值的操作方法》这篇文章介绍了如何在JavaScript中使用Promise对象来处理异步操作,通过使用fetch()方法和Promise对象,我们可以从... 目录在Javascript中,什么是Promise1- then() 链式操作2- 在之后的代码中使

MyBatis的配置对象Configuration作用及说明

《MyBatis的配置对象Configuration作用及说明》MyBatis的Configuration对象是MyBatis的核心配置对象,它包含了MyBatis运行时所需的几乎所有配置信息,这个对... 目录MyBATis配置对象Configuration作用Configuration 对象的主要作用C

SpringBoot实现导出复杂对象到Excel文件

《SpringBoot实现导出复杂对象到Excel文件》这篇文章主要为大家详细介绍了如何使用Hutool和EasyExcel两种方式来实现在SpringBoot项目中导出复杂对象到Excel文件,需要... 在Spring Boot项目中导出复杂对象到Excel文件,可以利用Hutool或EasyExcel

Springboot控制反转与Bean对象的方法

《Springboot控制反转与Bean对象的方法》文章介绍了SpringBoot中的控制反转(IoC)概念,描述了IoC容器如何管理Bean的生命周期和依赖关系,它详细讲解了Bean的注册过程,包括... 目录1 控制反转1.1 什么是控制反转1.2 SpringBoot中的控制反转2 Ioc容器对Bea

如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件

《如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件》本文介绍了如何使用Docker部署FTP服务器和Nginx,并通过HTTP访问FTP中的文件,通过将FTP数据目录挂载到N... 目录docker部署FTP和Nginx并通过HTTP访问FTP里的文件1. 部署 FTP 服务器 (