JavaWeb-ServletContext

1.servletContext

1.1 简介

ServletContext官方叫servlet上下文。服务器会为每一个工程创建一个对象,这个对象就是ServletContext对象。这个对象全局唯一而且工程内部的所有servlet都共享这个对象。所以叫全局应用程序共享对象。

servletContext是一个域对象,域对象是服务器在内存上创建的存储空间,用于在不同动态资源(servlet)之间传递与共享数据。

凡是域对象都有如下3个方法

setAttribute(name,value);name是String类型,value是Object类型 往域对象里面添加数据,添加时以key-value形式添加
getAttribute(name); 根据指定的key读取域对象里边的数据
removeAttribute(name); 根据指定的key删除域对象里边的数据

 

 

 

 

 

1.2 作用

是一个域对象,

1.可以读取全局配置参数

web.xml配置:

!--  servlet初始化参数-->
  <context-param>
    <param-name>url</param-name>
    <param-value>http://localhost</param-value>
  </context-param>

代码:获取并输出到浏览器

resp.getWriter().println("url:" + context.getInitParameter("url"));

2.搜索当前工程目录下面的资源文件

// ‘/’代表当前工程,即当前web工程下的目录对应的文件,非磁盘绝对路径
InputStream in = context.getResourceAsStream("/WEB-INF/classes/db.properties"); Properties prop = new Properties(); prop.load(in); resp.getWriter().println("username:" + prop.getProperty("userName")); resp.getWriter().println("pwd: " + prop.getProperty("password"));

 

3.获取当前工程的名字

resp.getWriter().println("contextpath: " + context.getContextPath());

4.转发请求   context.getRequestDispatcher("/goal").forward(req,resp);  /goal为实际请求的路径即由当前servlet转发到目的servlet。

context.getRequestDispatcher("/demo").forward(req,resp);

 


版权声明:本文引用CSDN博主「白衬衫丶」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_36371449/article/details/80314024

 

posted on 2021-05-25 11:12  曾经啊  阅读(56)  评论(0编辑  收藏  举报