目录
一、引入
我们知道Servlet是服务器端的Java程序,用于处理用户端的请求,其生命周期有四个阶段:加载及实例化,初始化,处理请求,销毁。而在SpringMVC中,只有一个DispatcherServlet用于拦截处理用户的所有请求,由于加载及实例化,销毁都是由Servlet容器执行的,所以我着重讲一下在SpringMVC中Servlet的初始化,处理请求部分。本片先介绍初始化这部分。
二、load-on-startup标签的作用
首先我们先看SpringMVC中DispatcherServlet的配置,我们知道Servlet都在Web.xml文件中配置,配置如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<display-name>cassini</display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>DispatcherServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:application.xml</param-value>
</init-param>
<load-on