liguofeng29’s blog

個人勉強用ブログだっす。

Servlet - load-on-startup

load-on-startupのServletとは

Webアプリが起動時にインスタンスが生成されるServletのこと。

 

設定方法は

1.  web.xmlに<servlet>タグの<load-on-startup>で設定する。

2. @WebServletアノテーションのloadOnStartupで設定する。

 

※load-on-startupの属性は整数であり、小さいほどインスタンスが生成される優先順が高い。

 

web.xml
<?xml version="1.0" encoding="UTF-8"?>
  <display-name>webDemo</display-name>
  <servlet>
    <servlet-name>loadOnStartupServlet</servlet-name>
    <servlet-class>LoadOnStartupServlet</servlet-class>
    <!-- startupのservlet -->
    <load-on-startup>1</load-on-startup>
  </servlet>
</web-app>
 
 
LoadOnStartupServlet.java
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
 
public class LoadOnStartupServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
 
    public void init(ServletConfig config) throws ServletException {
        super.init(config);
 
        System.out.println("LoadOnStartupServlet初期化されまいた。");
    }
}
 
Webアプリ起動時に出力されるメッセージ
LoadOnStartupServlet初期化されまいた。

※LoadOnStartupServlet.javaにはservice()がないため、

クライアントへ応答はできない。