浅谈ServletContext
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)简单的聊天系统.....
最新文章
- p:commandButton vs h:commandButton
- 【BZOJ】【1052】【HAOI2007】覆盖问题
- NOIP2006 能量项链
- JavaScript删除数组重复元素的5个高效算法
- js 保留小数位数
- iOS: 学习笔记实例, 用代码控制视图创建与切换
- Hp vPv
- Mac上关于shell使用Python3和C++11声明
- 7.modifier插件的自定义和使用
- voa 2015 / 4 / 25
- Servlet.service() for Servlet jsp threw exception javax.servlet.ServletException:File &;quot;/pageFoo
- 基于.NET的APP开发和Windows开发,异步回调差别
- Maven 学习总结(三) 之 依赖管理
- Python中安装bs4后,pycharm依然报错ModuleNotFoundError: No module named 'bs4'
- Reshape以及向量机分类学习和等高线绘制代码
- 安装PostGIS 2.1.1 时遇到checking for library containing GDALAllRegister... no
- Google C++单元测试框架
- xen虚拟机管理命令
- indexzero/http-server-1-简介
- WCF服务引用时错误: 无法导入 wsdl:portType详细信息
热门文章
- TCP/IP网络协议栈(转载)
- hihocoder网络流一·Ford-Fulkerson算法
- JAVA List<;T>; 如何初始化
- iOS LaunchScreen和LaunchImage的转换启动图
- Android Studio的使用(三)--包不分级、修改包名
- Bundle versions string, short与Bundle version
- k-means算法的Python实现
- js 日期控件laydate使用
- android测试之——Instrumentation(一)
- CI分页器pagination的原理及实现