SpringBoot外置tomcat

springboot微服务内置了tomcat,在工程目录下执行:mvn clean package,可以将项目打成jar,通过java -jar jar包名.jar启动项目。

有哪些场景需要将springboot打成war包去部署呢?

1.一个tomcat管理多个项目
2.springboot整合jsp等

解决方法:

1.jar中的jar改成war
2.引入依赖:

        
        org.springframework.boot
        spring-boot-starter-web
        
            
                org.springframework.boot
                spring-boot-starter-tomcat
            
        
        

        
    
        javax.servlet
        javax.servlet-api
        3.1.0
        provided
    
    
        org.apache.tomcat
        tomcat-servlet-api
        8.0.36
        provided
    

    3.启动类继承SpringBootServletInitializer,重写configure方法:

        @SpringBootApplication

        public class DemoApplication  extends SpringBootServletInitializer {

        public static void main(String[] args) {
    SpringApplication.run(DemoApplication.class, args);
}

        @Override
        protected SpringApplicationBuilder configure
            (SpringApplicationBuilder builder) {
    return builder.sources(DemoApplication.class);
}

}

    4.修改tomcat配置文件context.xml 

        修改标签:,就可以打包部署了

你可能感兴趣的:(springboot)