ServletContext
作者:互联网
1、什么是ServletContext
- ServletContext是一个接口,表示Servlet上下文对象
- 一个web工程,只有一个ServletContext对象实例
- ServletContext对象是一个域对象
- ServletContext是在web工程部署启动的时候创建,在web工程停止的时候销毁
1.1、什么是域对象
域对象,是可以像Map一样存取数据的对象,ServletContext的域对象是整个web工程
操作 | 存数据 | 取数据 | 删除 |
---|---|---|---|
Map | put() | get() | remove() |
域对象 | setAttribute() | getAttribute() | removeAttribute() |
2、ServletContext类的四大作用
- 获取web.xml中配置的上下文参数context-param
- 获取当前的工程路径,格式:/工程路径
- 获取工程部署后在服务器硬盘上的绝对路径
- 像Map一样存取数据
web.xml
<context-param>
<!--上下文参数,属于整个web工程-->
<param-name>username</param-name>
<!--参数值-->
<param-value>context</param-value>
</context-param>
<context-param>
<param-name>password</param-name>
<param-value>1111</param-value>
</context-param>
Servlet
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//1、获取上下文参数
System.out.println(getServletContext().getInitParameter("username"));
System.out.println(getServletContext().getInitParameter("password"));
//2、获取当前的工程路径
System.out.println(getServletContext().getContextPath());
//3、获取工程部署后在服务器硬盘上的绝对路径
System.out.println("工程部署路径:"+getServletContext().getRealPath("/"));
//工程下servlet目录下的MyServlet_04文件路径
System.out.println(getServletContext().getRealPath("/servlet/MyServlet_04"));
//4、像Map一样存取数据
getServletContext().setAttribute("ServletContext","你好ServletContext!");
System.out.println(getServletContext().getAttribute("ServletContext"));
}
标签:web,System,getServletContext,ServletContext,println,out 来源: https://www.cnblogs.com/suwuji/p/16421556.html