如果需要Web 应用启动时,可使用load-on-startup 元素完成Servlet 的初始化。
load-on-startup 元素只接收一个整型值,这个整型值越小, Serlet 就越优先初始化。
下面是个简单的Servlet,该Serlet 不响应用户请求,它仅仅执行计时器功能,每隔
一段时间会在控制台打印出当前时间:
public class T imerServlet extends HttpServlet
{
public void init(ServletConfig config)throws ServletException
{
super.init(config);
Timer t = new Timer(lOOO , new ActionListener()
{
//这里要定时的操作
public void actionPerforrned(ActionEvent e)
{
Systern.out.println(new Date());
} ) ;
t. start () ;
}
该Servlet 不会响应用户请求,因此它无须配置URL 映射,只能在应用启动时初始
化。将该Servlet 配置成load响。n-startup Servlet ,即可保证应用启动时初始化,创建该
Servlet 实例的配置片段如下:
<servlet>
<! -- Servlet 名〉
<servlet-name>timerServlet</servlet-name>
<!-- Servlet 的实现类…〉
<servlet-class>lee.TimerServlet</servlet-class>
<!-- 配置应用启动时,创建Servlet 实例>
<load-on-startup>l</load-on-startup>
</servlet>
该Servlet 将一直作为后台服务执行。