侧边栏壁纸
  • 累计撰写 106 篇文章
  • 累计创建 19 个标签
  • 累计收到 1 条评论

目 录CONTENT

文章目录

八、ServletContext(JavaEE 零基础笔记)

zero
2020-04-10 / 0 评论 / 0 点赞 / 19 阅读 / 3337 字
温馨提示:
本文最后更新于 2024-07-06,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

8.1、什么是ServletContext

  1. ServletContext是一个接口,它表示 Servlet 上下文对象

  2. 一个web工程,只有一个ServletContext对象实例

  3. ServletContext 对象是一个域对象

  4. ServletContext 是在 web工程部署启动的时候创建,在 web 工程停止的时候销毁

什么是域对象?

域对象,是可以像Map一样存取数据的对象,叫域对象。

这里的域指的是存取数据的操作范围

数据类型

存数据

取数据

删除数据

Map

put()

get()

remove()

域对象

setAttribute()

getAttribute()

removeAttribute()

8.2、ServletContext类的四个作用

  1. 获取web.xml中配置的上下文参数context-param

    ServletContext servletContext = getServletConfig().getServletContext();
    System.out.println("username:" + servletContext.getInitParameter("username"));
  2. 获取当前的工程路径,格式:/工程路径

    System.out.println("工程路径:" + servletContext.getContextPath());
  3. 获取工程部署后在服务器硬盘上的绝对路径

    System.out.println("项目绝对路径:" + servletContext.getRealPath("/"));
    System.out.println("CSS绝对路径:" + servletContext.getRealPath("/css"));
    System.out.println("Image绝对路径:" + servletContext.getRealPath("/images/index.jpg"));
  4. 像Map一样存取数据

    // 工程一
    ServletContext servletContext = getServletContext();
    System.out.println(servletContext.getAttribute("key1")); // 第一次还没有设置key1的值:null,第二次运行:key1
    servletContext.setAttribute("key1","value1");
    System.out.println("ServletMapOne工程:" + servletContext.getAttribute("key1"));
    
    // 工程二
    ServletContext servletContext = getServletContext();
    System.out.println("ServletMapTow工程:" + servletContext.getAttribute("key1"));

0

评论区