SpringMVC之ServletContainerInitializer和WebApplicationInitializer
首先项目需要放在web容器中启动。例如:tomcat,jetty
容器启动时先去加载META-INF/services/javax.servlet.ServletContainerInitializer文件下写的指定类。
ServletContainerInitializer基于服务提供者接口(SPI)概念,是web容器启动时提供给第三方组件的接口。是 Servlet 3.0 新增的一个接口。Servlet3.0的Web应用服务器中,服务器会查找实现类,执行实现类的onStartup方法用于配置Servlet容器例如注册Servlet、Filter或Listener,以取代通过web.xml配置注册。这样就利于开发内聚的web应用框架。
@Override
public void onStartup(@Nullable Set<Class<?>> webAppInitializerClasses, ServletContext servletContext)
throws ServletException {
List<WebApplicationInitializer> initializers = ne