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