谈一谈web.xml中的context-param和init-param
web.xml是web项目的一个配置文件,主要就是用来配置Listener、Filter、Servlet等。web.xml文件包括xml文件头,DOCTYPE声明,web-app元素。就是配置一些监听器,过滤器还有做一些servlet的映射。关于servlet可以看看这个。
接下来主要就是看看<context-param>和<init-param>分别是有什么,有什么作用,他们的区别是什么。
web.xml的配置中<context-param>作用 :
1. 启动一个WEB项目的时候,容器(如:Tomcat)会去读它的配置文件web.xml.读两个节点: <listener></listener> 和 <context-param></context-param>
2.紧接着,容器创建一个ServletContext(上下文),这个WEB项目所有部分都将共享这个上下文.
3.容器将<context-param></context-param>转化为键值对,并交给ServletContext.
4.容器创建<listener></listener>中的类实例,即创建监听.
换句话说,这个时候,你对<context-param>中的键值做的操作,将在你的WEB项目完全启动之前被执行.
<context-param>和<init-param>都是上下文参数,但它们的范围和使用方式不同。
<context-param>是application范围内的初始化参数,用于向servlet-context提供键值对,即应用程序的上下文信息,listener、filter等初始化时会用到这些信息
<init-param>是servlet范围内的参数,只能在servlet类的init()方法中取得