Servlet接口与ServletContext对象(有读写处理)

来源:互联网 发布:打水软件是什么 编辑:程序博客网 时间:2024/06/06 05:56

Servlet接口需要关注一个方法:

getServletContext()

返回结果:ServletContext 对象

ServletContext对象有丰富的方法,可以获取很多信息

ServletContext接口的基本信息

ServletContext是单实例,一个web应用只有一个ServletContext对象,所以该应用下的其他Servlet对象可以共享ServletContext中的信息,因此也叫做Context域。

ServletContext接口的常用方法

  1. java.lang.Object getAttribute(java.lang.String name)
    参数:使用setAttribute时设置的值
    返回值:Object或者null
  2. void setAttribute(java.lang.String name, java.lang.Object object)
    参数:1.设置属性名
                2.设置值
  3. java.lang.String getContextPath()
    返回值:/应用名
    这里要注意一下:在web.xml中配置<url-pattern>/test</url-pattern>的时候,是默认在"/应用名"这个路径下的
  4. java.io.InputStream getResourceAsStream(java.lang.String path)
    参数:源文件的绝对路径
    返回值:输入流
    如果运用Servlet来处理IO流数据,一定要用这个。可以用这两个对象来调用:
    如果在src下面,可以用getClass().getClassLoader().getResourceAsStream(name),参数为该文件在src文件夹下的相对路径
    如果在web应用下(即web-content),可以用servletContext.getResourceAsStream(name),参数为该文件在web-content下的相对路径
  5. java.lang.String getRealPath(java.lang.String path)
    参数:文件相对路径
    例如应用为a,源文件在a下面的b文件夹中,名字为c.txt,则参数为/b/c.txt
    返回值:服务器本地的绝对路径
    这个就可以找到源文件的绝对路径,对于文件传输来说很有用
  6. java.lang.String getInitParameter(java.lang.String name)
    参数:web.xml中如果配置了<init-param>,输入<param-name>中的参数
    返回值:<param-value>的值,或者null

ServletContext对象比ServletConfig对象好用多了

原创粉丝点击