zoukankan      html  css  js  c++  java
  • 三:ServletContext对象

    一、ServletContext对象

    1.什么是ServletContext对象

    ServletContext代表是一个web应用的环境(上下文)对象,ServletContext对象 内部封装是该web应用的信息,ServletContext对象一个web应用只有一个

    2.ServletContext对象的生命周期?

    创建:该web应用被加载(服务器启动或发布web应用

    销毁:web应用被卸载(服务器关闭,移除该web应用)

    3.怎样获得ServletContext对象

    1ServletContext servletContext = config.getServletContext();

    2ServletContext servletContext = this.getServletContext();

    4.ServletContext的作用

    (1)获得web应用全局的初始化参数

    web.xml中配置初始化参数

      通过context对象获得参数

    (2)获得web应用中任何资源的绝对路径(重要 重要 重要)

    方法:String path = context.getRealPath(相对于该web应用的相对地址);

    (3)getResourceAsStream 获取资源 流对象

     

    首先,Java中的getResourceAsStream有以下几种: 
    1. Class.getResourceAsStream(String path) : path 不以’/'开头时默认是从此类所在的包下取资源,以’/'开头则是从ClassPath根下获取。其只是通过path构造一个绝对路径,最终还是由ClassLoader获取资源。 

    2. Class.getClassLoader.getResourceAsStream(String path) :默认则是从ClassPath根下获取,path不能以’/'开头,最终是由ClassLoader获取资源。 

    3. ServletContext. getResourceAsStream(String path):默认从WebAPP根目录下取资源,Tomcat下path是否以’/'开头无所谓,当然这和具体的容器实现有关。 

    4. Jsp下的application内置对象就是上面的ServletContext的一种实现。 

    其次,getResourceAsStream 用法大致有以下几种: 

    第一: 要加载的文件和.class文件在同一目录下,例如:com.x.y 下有类me.class ,同时有资源文件myfile.xml 

    那么,应该有如下代码: 

    me.class.getResourceAsStream("myfile.xml"); 

    第二:在me.class目录的子目录下,例如:com.x.y 下有类me.class ,同时在 com.x.y.file 目录下有资源文件myfile.xml 

    那么,应该有如下代码: 

    me.class.getResourceAsStream("file/myfile.xml"); 

    第三:不在me.class目录下,也不在子目录下,例如:com.x.y 下有类me.class ,同时在 com.x.file 目录下有资源文件myfile.xml 

    那么,应该有如下代码: 

    me.class.getResourceAsStream("/com/x/file/myfile.xml"); 

    (4)ServletContext是一个域对象(重要 重要 重要)

    存储数据的区域就是域对象

    ServletContext域对象的作用范围:整个web应(所有的web资源都可以随意向 servletcontext域中存取数据,数据可以共享)

    域对象的通用的方法:

    setAtrribute(String name,Object obj);

    getAttribute(String name);

    removeAttribute(String name);

  • 相关阅读:
    Html.RenderPartial和Html.Partial区别
    SQL Server事务处理
    为什么要使用消息队列(一)
    消息队列的优缺点(三)
    消息队列消息顺序性
    分布式事务之消息队列解决方案
    Solr与tomcat整合,并添加中文分词器
    Solr设置高亮
    Solr执行查询操作
    Lucene使用Filter搜索过滤
  • 原文地址:https://www.cnblogs.com/deityjian/p/11048663.html
Copyright © 2011-2022 走看看