ServletContext接口——day_06

来源:互联网 发布:防止网站被刷 java 编辑:程序博客网 时间:2024/06/05 07:43

ServletContext:

-1)可以由ServletConfig获取
-2)该对象代表当前WEB应用:可以认为ServletContext是当前WEB应用的大管家,可以从中获取到当前WEB应用各个方面的信息。
-2.1获取当前WEB应用的初始化参数
-2.1.1初始化配置:

    <context-param>        <param-name>driver</param-name>        <param-value>com.mysql.jdbc.Driver</param-value>    </context-param>

与ServerConfig的配置区别在于,此处的配置属于全局,而ServerConfig为局部的。
-2.1.2获取配置:
getInitParameter(String name)获取指定参数名的初始化参数
getInitParameterNames() 获取参数名组成的Enumeration对象(枚举)
getRealPath(java.lang.String path)获取文件所在的目录的路径
getResourceAsStream(java.lang.String path)获取 输入流
与 ClassLoader 的区别在于classloader的path参数jdbc.properties
而ServletContext 的path为/WEB-INF/classes/jdbc.properties

ServletContext ServletContext=arg0.getServletContext();        String driver=ServletContext.getInitParameter("driver");        System.out.println("driver:"+driver);        String path=ServletContext.getRealPath("/hello.jsp");        System.out.println("path:"+path);        Enumeration<String> driverValues=ServletContext.getInitParameterNames();        while(driverValues.hasMoreElements()){            String drivername=driverValues.nextElement();            String drivervalue=ServletContext.getInitParameter(drivername);            System.out.println(drivername+":"+drivervalue);        }        try{        ClassLoader classloader=getClass().getClassLoader();        InputStream is=classloader.getResourceAsStream("jdbc.properties");        System.out.println("1."+is);        InputStream is2=ServletContext.getResourceAsStream("/WEB-INF/classes/jdbc.properties");        System.out.println("2."+is2);        }catch(Exception e){            e.printStackTrace();
0 0