Spring boot 的main 入口启动方式相信都会用,直接运行main直接就启动了,可是每每这种方式并非最佳的启动方式,好比运维的层面更但愿调整tomcat的调优参数,而只使用嵌入启动方式很难作到这些。因此使用tomcat方式启动spring boot就比较重要。web
一、去tomcat 官网下载 tomcat 8 tar.gz 文件,而后解压.spring
https://tomcat.apache.org/download-80.cgiapache
二、idea中,配置启动tomcat
三、gradle or maven 配置app
<packaging>war</packaging>运维
ormaven
apply plugin: "war"ide
四、增长tomcat启动调用spring boot初始化入口:gradle
public class ServletInitializer extends SpringBootServletInitializer { private Logger logger = LoggerFactory.getLogger(ServletInitializer.class); @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { logger.info("starting spring boot initializer ......"); return application.sources(MainApplication.class); } }
orui
package com.example.demo; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; @SpringBootApplication public class Application extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(Application.class); } public static void main(String[] args) { SpringApplication.run(Application.class, args); } }
五、start runing
搞定!