Servlet学习笔记(3)——ServletContext
2017-02-10 16:17
405 查看
定义
servlet引擎为每个web应用程序都创建一个对应的ServletContext对象,它被包含在ServletConfig对象中,调用ServletConfig.getServletContext方法可以返回ServletContext对象的引用。
注:由于一个web应用程序中的所有Servlet都共享同一个ServletContext对象,所以,ServletContext对象也被称为application对象(web应用程序对象)。
可以获取当前应用的各方面信息
2. 功能
1)获取当前web应用的初始化参数
设置初始化参数:可以被所有的servlet获取,而servlet的初始化参数只用那个servlet可以获取。
ServletContext的初始化参数设置节点在<web-app>节点里面,与<servlet>节点并列,如
使用getRealPath()方法如
E:\JavaWorkSpace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\day_0206\note.txt
3)获取当前web应用的名称:getContextPath()
/day_0206
4)获取当前web应用的某一个文件对应的输入流:getResourceAsStream(String path),path的 / 相当于当前应用的根目录,如
1: java.io.BufferedInputStream@156d9dd
2: java.io.FileInputStream@12734c2
5)和attribute相关的几个方法
servlet引擎为每个web应用程序都创建一个对应的ServletContext对象,它被包含在ServletConfig对象中,调用ServletConfig.getServletContext方法可以返回ServletContext对象的引用。
注:由于一个web应用程序中的所有Servlet都共享同一个ServletContext对象,所以,ServletContext对象也被称为application对象(web应用程序对象)。
可以获取当前应用的各方面信息
2. 功能
1)获取当前web应用的初始化参数
设置初始化参数:可以被所有的servlet获取,而servlet的初始化参数只用那个servlet可以获取。
ServletContext的初始化参数设置节点在<web-app>节点里面,与<servlet>节点并列,如
<context-param> <param-name>driver</param-name> <param-value>com.mysql.jdbc.Driver</param-value> </context-param> <context-param> <param-name>jdbcUrl</param-name> <param-value>jdbc:mysql:///atguigu</param-value> </context-param> <!-- 配置和映射servlet --> <servlet> <servlet-name>HelloServlet</servlet-name> <servlet-class>day_0206.HelloServlet</servlet-class>2)获取当前web应用的某一个文件在服务器上的绝对路径:getRealPath(String path);
使用getRealPath()方法如
String realPath = servletContext.getRealPath("/note.txt"); System.out.println(realPath);效果:输出
E:\JavaWorkSpace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\day_0206\note.txt
3)获取当前web应用的名称:getContextPath()
String contextPath = servletContext.getContextPath(); System.out.println(contextPath);输出
/day_0206
4)获取当前web应用的某一个文件对应的输入流:getResourceAsStream(String path),path的 / 相当于当前应用的根目录,如
try { ClassLoader classLoader = getClass().getClassLoader(); InputStream is = classLoader.getResourceAsStream("test.txt"); System.out.println("1: " + is); InputStream is2 = servletContext.getResourceAsStream("/WEB-INF/classes/test.txt");//必须用根目录来定位,否则如用“servletContext.getResourceAsStream("test.txt")”则输出null System.out.println("2: " + is2); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); }输出结果
1: java.io.BufferedInputStream@156d9dd
2: java.io.FileInputStream@12734c2
5)和attribute相关的几个方法
相关文章推荐
- 韩顺平servlet学习笔记05-servletContext
- [原创]java WEB学习笔记55:Struts2学习之路---详解struts2 中 Action,如何访问web 资源,解耦方式(使用 ActionContext,实现 XxxAware 接口),耦合方式(通过ServletActionContext,通过实现 ServletRequestAware, ServletContextAware 等接口的方式)
- servlet学习笔记8——ServletContext的讲解和使用
- Servlet知识详解(一)ServletContext对象 和 ServletConfig对象学习笔记
- Servlet学习笔记—ServletContext的详解
- JavaWeb学习笔记:ServletConfig()和ServletContext()
- servlet学习笔记8——ServletContext的讲解和使用
- 学习笔记(二)HttpServlet、ServletContext、ServletConfig
- JavaWeb学习笔记----Servlet的ServletConfig对象和ServletContext对象的使用
- servlet学习笔记8——ServletContext的讲解和使用
- Servlet技术之ServletContext接口(学习笔记)
- [原创]java WEB学习笔记47:Servlet 监听器简介, ServletContext(Application 对象), HttpSession (Session 对象), HttpServletRequest (request 对象) 监听器,利用listener理解 三个对象的生命周期
- 学习笔记--【转】Parameter与Attribute的区别&servletContext与ServletConfig区别
- Servlet学习笔记(二)之Servlet路径映射配置、Servlet接口、ServletConfig、ServletContext
- servlet学习笔记---servletContext
- 重温Servlet学习笔记--servletContext对象
- Jsp&Servelet 学习笔记-对一个Servlet创建多个Mapping
- java学习笔记—Servlet技术(11)
- 重温Servlet学习笔记--编码问题
- Servlet学习笔记_01_Servlet或javaee要了解的一些常识