简述
主要区别
jar: 打包时会依赖tomcat,与直接运行main方法一样运行,运行过程:
SpringApplication.run()
-> spring ioc
->(嵌入式) Servlet容器
war: 上述的启动方法需要覆盖SpringBootServletInitializer的configure方法,先调用该方法,最终调用SpringApplication的run(),运行过程:
Servlet容器
-> SpringBootServletInitializer
-> SpringApplication.run()
-> spring ioc
注: SpringBootServletInitializer的作用是替代web.xml的配置