web.xml中的load-on-startup

作者:周星 发布:2017-10-07

       在 github 上找了一个 spring MVC 的开源项目,想通过源码的方式来学习 java spring,当看到 web.xml 文件时发现了这样一个配置 1,触发了本人的好奇感,于是在 google 上探索一番,终于在上和 [servlet spec](http://download.oracle.com/otn-pub/jcp/servlet-3.0-fr-eval-oth-JSpec/servlet-3_0-final-spec.pdf?AuthParam=1425533584_fd4ab2ed166ad384871d327e3f9ae470) 上找到了答案,下面的是 servlet spec 的解释。

The element load-onstartupindicates that this servlet should be loaded (instantiated and have itsinit() called) on the startup of the Web application. The element content of thiselement must be an integer indicating the order in which the servlet should beloaded. If the value is a negative integer, or the element is not present, thecontainer is free to load the servlet whenever it chooses. If the value is a positiveinteger or 0, the container must load and initialize the servlet as the application isdeployed. The container must guarantee that servlets marked with lower integersare loaded before servlets marked with higher integers. The container may choosethe order of loading of servlets with the same load-on-startup value.

翻译过来基本是这样的:

  1. 这个元素表明,在 APP启动时,这个 servlet 应该被加载(并且被实例化和执行 init()方法)

  2. load-on-startup 的值必须为正整数

  3. 值的大小表明了 servlet 加载的顺序,值越小则越先加载

  4. 如果标签值为空或者为非正整数,服务器会在 APP 启动过程中以随机顺序加载 servlet

关于第四点存疑,如果您有不同意见,欢迎与博主联系

如果您对本文有什么意见或建议,请联系博主

支付宝扫码赞助博主


评论(0)