Spring Boot Web开发之切换Servlet容器

  Spring Boot内嵌Servlet容器默认使用Tomcat,可以切换其他内置Servlet容器,也可以使用非内嵌Servlet容器。

  一、内嵌容器切换,比如引入jetty

        

   二、使用非内嵌容器

    如果项目以war包的形式部署内置servlet容器就不再可用,需要使用指定的外部servlet容器。以外置tomcat为例示范切换容器,如下:

    1)同样需要排除内置servlet容器,如上。

    2)在pom.xml中引用tomcat servlet依赖关系

        

    3)添加ServletInializer类

        

     以上处理完成,参考Spring Boot部署之 web项目war包运行 - 池塘里洗澡的鸭子 - 博客园 (cnblogs.com)继续进行部署。

    为什么是SpringBootServletInitializer呢?可以看看下面UML图:

        

     发现端倪了么?SpringBootServletInitializer实现了WebApplicationInitializer。关于WebApplicationInitializer在SpringMVC的web配置——JDK中SPI机制的应用中有详细介绍,具体执行初始化的类是SpringServletContainerInitializer

        

posted on 2022-07-20 16:00  池塘里洗澡的鸭子  阅读(431)  评论(0编辑  收藏  举报