javaweb服务器启动时加载servlet

介绍

可以用2种方式配置:

  • web.xml 中配置

  • 注解方式

web.xml中配置

servlet类

public class InitServlet extends HttpServlet {

    public void init(ServletConfig config) throws ServletException {
        System.out.println("初始化")
    }
}

web.xml配置

<servlet>

    <servlet-name>InitServlet</servlet-name>
    <servlet-class>org.jsoft.servlet.InitServlet</servlet-class>
    <!-- 启动服务器后,自动加载Servlet -->
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>InitServlet</servlet-name>
    <url-pattern>/InitServlet</url-pattern>
</servlet-mapping>

说明

<load-on-startup>1</load-on-startup>

解释:

  • 用于设置服务器是否在启动时加载该servlet(实例化Servlet、调用init() 方法)

  • 值 >= 0,表示在服务器启动时加载

  • 值 < 0或者没有,第一次访问servlet时才会 创建对象、调用init() 方法

  • 值的大小表示优先级顺序,正值越小,优先级越高

注解

@WebServlet(urlPatterns = "/InitServlet",loadOnStartup = 1)
public class InitServlet extends HttpServlet {

    public void init(ServletConfig config) throws ServletException {
        System.out.println("初始化")
    }
}

解释

  • 在 @WebServlet 注解的 loadOnStartup 属性中,配置是否加载,其值的含义同上

原文出处:/show_1IXvlhQ9EQa.html