首先来看看他们之间的区别:
* 元素属于所有
* 元素属于整个应用程序所有(application),不仅仅在servlet中可以得到
下面来看一些代码(这是一本叫Spring高手秘籍的书中的部分代码,觉得很有代表性):
可以看出,在同一个web.xml中使用了<context-param>和<init-param>元素,之前所说的区别在此也一目了然。
另外,在这个web.xml中也可以看到<load-on-startup>元素的用法,<load-on-startup>元素用法的文档中介绍“The container may choose the order of loading of servlets with the same load-on-start-up value.”上面的程序中可以看出它的value,分别设为1和2,然后容器就会按此顺序loading了。
补充:从一些web.xml可以发现在过滤器<filter>中也有使用<init-param>,可见<init-param>的使用还是比较灵活的。