当前位置: 首页 > 图文教程 > 网络编程 > JSP > 学习笔记:ServletContext接口

JSP
无需调优的内存优化
JAVA EXCEL API
新手指南之如何搜索你的问题的答案
Java 101:如果我不懂Java该怎么办?
jsp由浅入深
把本页内容导出成word文件或excel文件(原创)
在BEA WebLogic中使用Java消息服务
Form Your Own Design Pattern Study Group
从Coding Fan到真正的技术专家
我的Mysql5.0中文乱码解决方案
结合JAVASCRIPT将HTML导入Excel形成简单Web报表
Struts 的汉字显示问题终结解决方案
j2me网络实战指南
Java Page Flow开发:从JDBC数据源中检索并显示数据
人生、梦想、Java,又一个梦想者上路!
用Struts开发基于MVC的Web应用
Apache plug-in配置代理请求实战
一个简单的Timer Service
Tomcat 服务器下 JSP 页面中文问题及解决方法总结
Java Servlet 编程及应用(一)

JSP 中的 学习笔记:ServletContext接口


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-03   浏览: 151 ::
收藏到网摘: n/a

安装在一个服务器中的一个特定URL名字空间(比如,/myapplication)下的所有Servlet,JSP,JavaBean等Web部件的集合构成了一个Web的应用,每一个Web应用(同一JVM),容器都会有一个背景对象,而javax.servlet.ServletContext接口就提供了访问这个背景对象的途径。你可以通过一个Servlet实例的getServletContext方法得到该Servlet运行其中的这个背景对象。从这个背景对象中你可以访问如下信息或资源:
    
  • 初始化参数

  •     
  • 存储在背境中的对象

  •     
  • 与本背景关联的资源

  •     
  • 日志

可以调用ServletContext.getInitParameterNames()返回一个初始化参数的枚举对象(java.util.Enumeration),或直接指定一个参数名来得到特定的参数值:ServletContext.getInitParameter(String name)。
另外,在Servlet的背景中还可以存放与特定名字绑定的任意类型的对象,比如:
  1.         context.setAttribute(String name, Object object);
将把object对象绑定到名字name,存放在Servlet背景中,可供同一背景中的其他Servlet共享。其他Servlet可以通过context.getAttribute(String name),得到一个背景中的对象,或通过context.removeAttribute(String name)在背景中移除一个对象。
    一个特定资源的URL可以通过调用ServletContext.getResource(String path)得到,这儿的path参数必须以“/”开始,将被解析为相对于当前Servlet背景的根的相对路径。这个方法有别于基于类加载器的java.lang.Class.getResource方法。如果你通过ServletContext.getResource方法请求了一个.jsp页面,你得到的将是JSP的源码,要得到执行结果,可以使用RequestDispatcher对象的include方法。你也可以直接以输入流的形式得到资源,
  1.         public InputStream getResourceAsStream(String path);

    ServletContext提供了日志的支持,你可以简单的通过调用ServletContext.log(String msg),或ServletContext.log(String msg,Throwable throwable)方法,向底层的Servlet日志记录写入日志信息,后者还可写入异常信息和throwable的跟踪栈。