d
用于声明应用(Application)范围的初始化参数。它用于向 ServletContext提供键值对,即应用程序上下文信息。我们的listener, filter等在初始化时会用到这些上下文中的信息。
例如
<web-app>
<context-param>
<param-name>Country</param-name>
<param-value>India</param-value>
</context-param>
<context-param>
<param-name>Age</param-name>
<param-value>24</param-value>
</context-param>
</web-app>
在servlet中,通过如下方式根据key获取value:
getServletContext().getInitParameter("Country");
getServletContext().getInitParameter("Age");
context-param与ServletContext.setAttribute()对比
servletContext.setAttribute()是动态的,可以在运行时被设置或重置。
init-parameter是静态的,不能在app生命周期内改变。
context-param与init-param对比
context-param是web.xml的元素,其初始化的键值对是Application范围的,对所有servlet有效。
init-param是servlet元素的子元素,其初始化的键值对是servlet范围的,只对配置的servlet有效。