1.web容器为每个<servelt>设置产生一个Servetl以及ServeltConfig实例
2.一般不使用ServletConfig的log方法执行日志功能,使用JDK本身附带的日志包或Log4j
如果使用的是Tomcat,则此方法的日志保存在Tomcat的log目录下
3.Servlet初始化参数通常作为常数来设置,可以将一些不想写死的信息放到初始化参数中
<servlet>
<servlet-name>HeaderDemo</servlet-name>
<servlet-class>com.my.myHttpServletRequest.HeaderDemo</servlet-class>
<init-param>
<param-name>age</param-name>
<param-value>20</param-value>
</init-param>
</servlet>
<servlet-mapping>
..............
4.ServletContext是整个web应用程序的代表,可以通过ServletConfig的getServletContext方法获取,可以使用ServletContext与web应用程序通信,获取初始参数/设置属性..........
ServletContext既然代表整个web应用程序,就可以用它来与web应用程序沟通,甚至取得同一个服务器上的其它web应用程序的ServletContext
getResourcePaths() 查看某个目录中有哪些文件
getResourceAsStream() 读取某个文件内容,指定路径必须以/开头,返回InputStream实例
ServletContext还可以设置整个web应用程序中servlet所需共享的数据,即设置其属性
ServletContext自己没有设置属性,但它有默认的属性,不知道在哪定义的???
Enumeration<String> e2 = s.getAttributeNames();
while(e2.hasMoreElements()){
String n = e2.nextElement();
//String r = (String)s.getAttribute(n);
System.out.println(n);
}
结果:
javax.servlet.context.tempdir
org.apache.catalina.jsp_classpath
org.apache.jasper.runtime.JspApplicationContextImpl
org.apache.catalina.resources
colleag
org.apache.tomcat.JarScanner
speciality
org.apache.tomcat.InstanceManager
5.ServletContextListener
ServeltContextListener监听ServeltContext(Web应用程序)的初始化与销毁
分别调用了 contextInitialized()与contextDestroyed() ,并传入ServletContextEvent,则可以得到ServeltContext