context-param 为上下文初始化参数
解析:每个<context-param>元素含有一对参数名和参数值(param-name和param-value),用作应用的Servlet上下文初始化参数,
参数名在整个Web应用中必须是惟一的,在web应用的整个生命周期中上下文初始化参数都存在,任意的Servlet和jsp都可以随时随地访问它。
什么时候需要它?
比如:当我们定义一个管理员email地址,用来从程序发送错误,或者与整个应用程序有关的其他设置,使用自定义的设置文件需要额外的代码和管理,
而直接在程序中使用硬编码(Hard-coding)参数值会给你之后修改程序带来麻烦,更困难的是,要根据不同的部署使用不同的设置;
但context-param可作为一个用于设置这种参数的标准位置。
常见的例子:
1. 为Spring添加配置文件
Spring配置文件默认的路径是/WEB-INF/applicationContext.xml,即WEB-INF目录下创建的xml文件的名称必须是applicationContext.xml。
但通过在web.xml里加入contextConfigLocation,可指定相应的xml文件名,如果有多个xml文件,可以写在一起并以“,”号分隔,例如:
<!-- spring config --> <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/spring-configuration/*.xml</param-value> </context-param> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener>