`
huxinyao1016
  • 浏览: 8103 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Servletcontext的几点认识

阅读更多
运行在Java虚拟机中的每一个Web应用程序都有一个与之相关的Servlet上下文。Java Servlet API提供了一个ServletContext接口用来表示上下文。在这个接口中定义了一组方法,Servlet可以使用这些方法与它的Servlet容器进行通信,例如,得到文件的MIME类型,转发请求,或者向日志文件中写入日志消息。

  ServletContext对象是Web服务器中的一个已知路径的根。对于本章的实例,Servlet上下文被定位于http://localhost:8080/ch12.以/ch12请求路径(称为上下文路径)开始的所有请求被发送到与此ServletContext关联的Web应用程序。

  Servlet容器提供商负责提供ServletContext接口的实现。Servlet容器在Web应用程序加载时创建ServletContext对象,作为Web应用程序的运行时表示,ServletContext对象可以被Web应用程序中所有的Servlet所访问。


先来举几个JAVA中用到Context的例子(1)JNDI的一个类javax.naming.InitialContext,它读取JNDI的一些配置信息,并内含对象和其在JNDI中的注册名称的映射信息。请看下面的代码
InitialContext ic=new InitialContext();
RMIAdaptor server=(RMIAdaptor)ic.lookup("jmx/invoker/RMIAdaptor");
这是一段JBoss中获取MBean的远程调用类的代码。在这里面通过InitialContext中JNDI注册的名称“jmx/invoker/RMIAdaptor”来获得RMIAdaptor
对象。这和JAVA集合中的MAP有点象,有一个String的key,key对映着它的对象。(2)再来看看下面Spring中最常见的几句代码。ApplicationContext是内含configuration.xml配置文件的信息,使得可以通过getBean用名称得到相应的注册对象。
ApplicationContext ctx= newFileSystemXmlApplicationContext("configuration.xml");
Object obj= ctx.getBean("Object_Name");

从上面的代码,我很能体会到Context所代表的意义:公用信息、环境、容器....。所以我觉得Context翻译成上下文并不直观,按照语言使用的环境,翻译成“环境”、“容器”可能更好。把Context翻译成“上下文”只是不直观罢了,不过也没大错。我们来看看中文的“上下文”是什么意思。我们常说听话传话不能“断章取义”,而要联系它的“上下文”来看。比如,小丽对王老五说“我爱你”,光看这句还以为在说情话呢。但一看上下文--“虽然我爱你,但你太穷了,我们还是分手吧”,味道就完全变了。从这里来看“上下文”也有“环境”的意思,就是语言的环境。
PS:
上下文其实是一个抽象的概念。我们常见的上下文有Servlet中的pageContext,访问JNDI时候用的Context。写过这些代码的人可能比较容易理解,其实他们真正的作用就是承上启下。比如说pageContext他的上层是WEB容器,下层是你写的那个Servlet类,pageContext作为中间的通道让Servlet 和Web容器进行交互。再比如访问JNDI的Context,他的上层是JNDI服务器(可能是远程的),下层是你的应用程序,他的作用也是建立一个通道让你能访问JNDI服务器,同时也让JNDI服务器接受你的请求,同样起到交互作用。
分享到:
评论

相关推荐

    ServletContext

    `ServletContext`是Java Web开发中的一个关键概念,它是Servlet API的一部分,主要用于在多个Servlet之间共享信息。在Myeclipse这样的集成开发环境中,我们经常会用到`ServletContext`来增强应用程序的功能和交互性...

    servlet中的ServletContext的使用

    在Servlet的世界里,`ServletContext`扮演着至关重要的角色。它是一个全局的、跨.servlet共享的上下文对象,为整个Web应用提供了一个共享数据和资源的平台。在这个实例中,我们将深入探讨`ServletContext`如何用于...

    ServletContext与ServletConfig关系

    ServletConfig 与 ServletContext 的关系 在 Servlet 编程中,ServletConfig 和 ServletContext 两个对象经常被混淆,然而它们有着截然不同的作用域和用途。 首先, lets 看看 ServletConfig 对象。ServletConfig ...

    servletContext的实例代码

    在Java Web开发中,`ServletContext`是一个至关重要的接口,它代表了整个Web应用程序的上下文。这个上下文包含了关于Web应用的所有信息,如全局的初始化参数、资源、以及与所有Servlet共享的对象。在这个实例中,...

    35、servlet--servletContext

    `servletContext`是Servlet API中的一个关键概念,代表了整个Web应用程序的上下文。在这个上下文中,Servlet可以共享信息,如全局属性、监听器等。下面将详细讨论`servletContext`及其在实际开发中的应用。 一、...

    ServletContext读取web应用中的资源文件.doc

    ServletContext 读取 web 应用中的资源文件 在 Web 应用程序中,我们经常需要读取某些资源文件,如配置文件、图片等等。为了实现这一点,ServletContext 接口提供了一些方法来读取 web 应用中的资源文件,这些方法...

    Spring-for -servletcontext1.0.jar

    Ssh获取ServletContext 只需要更改struts-config action中的type就可以了ru :type="com.uo.spring.SpringDelegatingActionProxy" 大家有什么疑问可以直接去我的blog查看...《[正解]Ssh获取ServletContext》

    超全面javaweb教程28天第9天 14 获取ServletContext对象

    超全面javaweb教程28天第9天_14_获取ServletContext对象

    ServletContext与application异同.docx

    - 异同点主要体现在名称上。在实际编程中,两者经常互换使用,表示的是同一个概念,即Web应用的全局共享环境。在JSP中,`application`对象就是`ServletContext`的实例。 6. **使用场景** - `ServletContext`常...

    quartz servletcontext配置资料

    在Servlet环境下,特别是在使用Spring MVC等框架时,Quartz与ServletContext的结合配置显得尤为重要,因为这能让我们更好地管理和监控后台定时任务。 ### Quartz简介 Quartz 提供了一个完全线程化的事件调度器,...

    ServletContext接口

    下面将详细解析`ServletContext`接口的关键知识点。 #### 1. 应用程序上下文 `ServletContext`接口代表了Web应用的全局环境,每一个Web应用在启动时,Servlet容器都会创建一个`ServletContext`实例,并在整个应用...

    servletcontext详解

    在Servlet程序中获取`ServletContext`对象主要有以下几种方式: - **通过`ServletConfig`对象**:每个Servlet都会有一个`ServletConfig`对象,该对象可以用来获取`ServletContext`对象。例如:`getServletConfig()....

    使用ServletContext对象完成网页计数器

    要实现一个基于`ServletContext`的网页计数器,我们需要以下几个步骤: 1. **创建计数器变量**:在`ServletContext`中创建一个变量来存储计数器的值。这通常在Web应用启动时或者首次访问Web应用时完成。可以使用`...

    ServletContext介绍及用法.docx

    【ServletContext详解】 Servlet上下文(ServletContext)是Java Web开发中的一个重要概念,它是服务器为每个Web应用程序创建的一个全局共享对象。这个对象在整个Web应用中独一无二,所有的Servlet都可以访问它,...

    ServletContext.pdf

    ### ServletContext概述与应用 #### 一、ServletContext简介 `ServletContext`是Servlet容器提供的一种机制,用于在Web应用程序的不同组成部分之间共享数据,并提供对整个Web应用程序的全局信息访问。它是Servlet ...

    ServletConfig与ServletContext.docx

    ServletConfig和ServletContext是Java Servlet API中的两个重要接口,它们在Web应用程序中扮演着关键角色,主要负责管理和传递初始化参数以及实现应用级别的通信。 ServletConfig对象主要用于装载Servlet的初始化...

    java web servletContext和ServletConfig详解

    java web servletContext和ServletConfig详解

    ServletContext与ServletConfig的深度分析

    ### ServletContext与ServletConfig的深度分析 #### 一、概述 在Java Web开发中,`ServletContext`和`ServletConfig`是非常重要的两个接口,它们分别代表了应用级别的共享环境和单个Servlet的配置信息。理解这两个...

    监听request、session、ServletContext 对象存放的数据变化情况

    博客地址:...存放数据指的是这三个对象在工程中setAttribute(),removeAttribute()的时候,我们的监听器就会知道,然后在对应的方法中执行相应的操作。

Global site tag (gtag.js) - Google Analytics