每一个 web 应用都有且仅有一个 ServletContext 对象,又称 Application 对 象,从名称中可知,该对象是与应用程序相关的。在 WEB 容器启动的时候,会 为每一个 WEB 应用程序创 建一个对应的 ServletContext 对象。
1、作用
1)、作为域对象用来共享数据,此时数据在整个应用 程序中共享;
2)、该对象中保存了当前应用程序相关信息。例如可以通过 getServerInfo();方法获取当前 服 务 器 信 息 , getResourceAsStream(String path); 方法以流的形式获取某个资源,getRealPath(String path);获取资源的真实路 径等。
2、ServletContext 对象的获取
// 获取ServletContext对象
// 通过request对象获取
ServletContext servletContext = request.getServletContext();
// 通过session获取
ServletContext servletContext2 = request.getSession().getServletContext();
// 通过servletConfig对象
ServletContext servletContext3 = getServletConfig().getServletContext();
// 直接获取
ServletContext servletContext4 = getServletContext();
3、常用方法
// 获取服务器版本
String serverInfo = request.getServletContext().getServerInfo();
System.out.println("获取服务器版本:" + serverInfo);
// 获取项目在服务器中的真实路径
String realPath = request.getServletContext().getRealPath("/");
System.out.println("获取项目在服务器中的真实路径:" + realPath);
网友评论