您的位置:首页 > 其它

What is load on startup element in web.xml file

2010-09-08 18:12 302 查看
We can specify the order in which we want to initialize various
Servlets.

Like first initialize Servlet1 then Servlet2 and so on.

This is
accomplished by specifying a numeric value for the

<load-on-startup>
tag.

<load-on-startup> tag specifies that the servlet should be
loaded

automatically when the web application is started.

The value is
a single positive integer, which specifies the loading

order. Servlets with
lower values are loaded before servlets with

higher values (ie: a servlet
with a load-on-startup value of 1 or 5 is

loaded before a servlet with a
value of 10 or 20).

When loaded, the init() method of the servlet is
called. Therefore

this tag provides a good way to do the
following:

start any daemon threads, such as a server listening on a
TCP/IP port,

or a background maintenance thread

perform initialisation of
the application, such as parsing a settings

file which provides data to other
servlets/JSPs

If no <load-on-startup> value is specified, the servlet
will be loaded

when the container decides it needs to be loaded - typically
on it's

first access. This is suitable for servlets that don't need to
perform

special initialisation.

I hope that clears all the doubts
regarding <load-on-startup> in web.xml.

Short: value >= 0 means that the servlet is loaded when the web-app is
deployed or when the server starts. value < 0 : servlet is loaded whenever
the container feels like.

Long answer(from the spec): "The load-on-startup element indicates that this
servlet should be loaded (instantiated and have its init() called) on the
startup of the web application. The optional contents of these element must be
an integer indicating the order in which the servlet should be loaded. If the
value is a negative integer, or the element is not present, the container is
free to load the servlet whenever it chooses. If the value is a positive 128
integer or 0, the container must load and initialize the servlet as the
application is deployed. The container must guarantee that servlets marked with
lower integers are loaded before servlets marked with higher integers. The
container may choose the order of loading of servlets with the same
load-on-start-up value."
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: