jsp中上下文对象是什么?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jsp中上下文对象是什么?相关的知识,希望对你有一定的参考价值。

pageContext对象是javax.servlet.jsp.PageContext 类的实例,用来代表整个JSP页面。
这个对象主要用来访问页面信息,同时过滤掉大部分实现细节。
这个对象存储了request对象和response对象的引用。application对象,config对象,session对象,out对象可以通过访问这个对象的属性来导出。
pageContext对象也包含了传给JSP页面的指令信息,包括缓存信息,ErrorPage URL,页面scope等。
PageContext类定义了一些字段,包括PAGE_SCOPE,REQUEST_SCOPE,SESSION_SCOPE, APPLICATION_SCOPE。它也提供了40余种方法,有一半继承自javax.servlet.jsp.JspContext 类。
其中一个重要的方法就是 removeAttribute(),它可接受一个或两个参数。比如,pageContext.removeAttribute("attrName") 移除四个scope中相关属性,但是下面这种方法只移除特定 scope 中的相关属性:
参考技术A 一、上下文概念:
每一个Web Project,运行时都部署在Tomcat下,称为一个应用。
部署后,启动Tomcat时,Tomcat将为每一个应用创建一个对象,这个对象称之为上下文对象。
一个应用有且只有一个上下文对象,由容器创建,并保存在容器上。
二、上下文作用:
1.上下文对象类似一个全局变量,在整个应用中有效。
2.利用上下文对象,可以实现多个用户间的数据共享。
Servlet API中定义了ServletContext接口,用来封装上下文对象。

不理解 Java EE 中上下文的概念

【中文标题】不理解 Java EE 中上下文的概念【英文标题】:Don't understand the concept of a context in Java EE 【发布时间】:2013-11-25 06:47:39 【问题描述】:

我一直在学习 Spring、JSP 和 servlet。我不明白上下文根的概念。他们有很多。 SpringContext 根,servlet 上下文根,可能还有其他。

在 Spring MVC 应用程序中,有多少个上下文根以及如何识别它们?它们的真正含义是什么?

【问题讨论】:

您可能希望先从编写一个简单的 servlets 应用程序开始。你需要彻底了解这个世界——其余的一切都建立在此之上。 无法给出符合 SO 准则的简明答案。它确实需要有关 servlet 的教程,该教程可在其他地方获得。我第二个@ThorbjørnRavnAndersen:浏览 Oracle 的 Java 网站上的 servlets 教程。 令人惊讶的是,学习一个框架需要这么多的先决知识。我不明白为什么创建 servlets 应用程序对于我提出的问题很重要。我已经知道调度程序 servlet、前端控制器的作用。国际奥委会我完全理解。不能有人从概念上解释上下文根的含义。我肯定不明白。尝试解释 @ThorbjørnRavnAndersen 是对的。作为对您的 Spring MVC 相关问题的回答,我希望我的以下回答至少能带来一些启发(从“长答案”部分开始阅读):Spring: namespace vs contextConfigLocation init parameters in web.xml。正如其他人已经推荐的那样,首先阅读一些基本教程,比如流行的:Beginning & Intermediate Servlet & JSP Tutorials 如果您不了解上下文根,如何彻底理解调度程序 servlet? 【参考方案1】:

上下文通常是指用于与运行时环境交互的接口。这为您的程序提供了一组功能(如安全性、请求处理等),这些功能通常是在此类域中运行的所有应用程序所需的。这样的环境在java栈(servlet容器、ejb一等...)中一般命名为container

见What exactly is a Context in Java?

当为单个应用程序设置不同的上下文并在它们之间进行继承时,可以使用术语根。根层次结构(通常包含一些通用配置)是根上下文。

在此处查看 JB Nizet 的答案:Web-application context/ root application context and transaction manager setup

但是,在您的情况下,根一词具有特殊的含义,因为它用于 Web 容器。它主要是指 Web 应用程序路径的根,因为每个 Web 应用程序只有一个上下文,我们正在谈论给定 Web 应用程序的 context root

见http://tomcat.apache.org/tomcat-7.0-doc/config/context.html

【讨论】:

以上是关于jsp中上下文对象是什么?的主要内容,如果未能解决你的问题,请参考以下文章

Android Studio中上下文菜单的使用

Python中上下文管理器和装饰器之间的区别

构造函数中上下文类的依赖注入

Python3中上下文管理器介绍

SwiftUI 应用程序中上下文保存的核心数据 Objective-C 异常

ASP.NET MVC 上下文对象使用单例