ServletContext是什么?

WEB容器在启动时,它会为每个WEB应用程序都创建一个对应的ServletContext对象,它代表当前web应用。ServletConfig对象中维护了ServletContext对象的引用,开发人员在编写servlet时,可以通过ServletConfig.getServletContext方法获得ServletContext对象。由于一个WEB应用中的所有Servlet共享同一个ServletContext对象,因此Servlet对象之间可以通过ServletContext对象来实现通讯。ServletContext对象通常也被称之为context域对象。

是不是觉得上面一段话有点听不懂?那么不要着急,要理解ServletContext就必须和Cookie、Session做一个对比,我们通过一张图来说明一下:

你可以把它想象成一个公共的空间,可以被所有的客户访问,也就是说A客户可以访问D,B客户也可以访问D,C客户也能访问D。

好了这下子知道ServletContext是怎么回事了吧?那既然知道ServletContext是什么了,我们该如何使用ServletContext呢?通常情况下我们可以分以下三步曲使用ServletContext:

1.如何得到ServletContext实例

this.getServletContext();

2.你可以把它想象成一张表,这个和Session非常相似,每一行就是一个属性,如图:

ServletContext

名字

String

Object

   
   
   
   

添加属性setAttribute(String name,Object obj);得到值 getAttribute(String name)返回Object,删除属性removeAttribute(String name);

3.生命周期

ServletContext中的属性的生命周期从创建开始,到服务器关闭而结束。

那么在网站开发中,有很多功能需要使用ServletContext,比如:

(1)网站计数器(2)网站在线人数统计(3)简单的聊天系统.....

最新文章

  1. p:commandButton vs h:commandButton
  2. 【BZOJ】【1052】【HAOI2007】覆盖问题
  3. NOIP2006 能量项链
  4. JavaScript删除数组重复元素的5个高效算法
  5. js 保留小数位数
  6. iOS: 学习笔记实例, 用代码控制视图创建与切换
  7. Hp vPv
  8. Mac上关于shell使用Python3和C++11声明
  9. 7.modifier插件的自定义和使用
  10. voa 2015 / 4 / 25
  11. Servlet.service() for Servlet jsp threw exception javax.servlet.ServletException:File "/pageFoo
  12. 基于.NET的APP开发和Windows开发,异步回调差别
  13. Maven 学习总结(三) 之 依赖管理
  14. Python中安装bs4后,pycharm依然报错ModuleNotFoundError: No module named 'bs4'
  15. Reshape以及向量机分类学习和等高线绘制代码
  16. 安装PostGIS 2.1.1 时遇到checking for library containing GDALAllRegister... no
  17. Google C++单元测试框架
  18. xen虚拟机管理命令
  19. indexzero/http-server-1-简介
  20. WCF服务引用时错误: 无法导入 wsdl:portType详细信息

热门文章

  1. TCP/IP网络协议栈(转载)
  2. hihocoder网络流一·Ford-Fulkerson算法
  3. JAVA List<T> 如何初始化
  4. iOS LaunchScreen和LaunchImage的转换启动图
  5. Android Studio的使用(三)--包不分级、修改包名
  6. Bundle versions string, short与Bundle version
  7. k-means算法的Python实现
  8. js 日期控件laydate使用
  9. android测试之——Instrumentation(一)
  10. CI分页器pagination的原理及实现