前言:Spring Boot因其特定的配置方式,受到了Java开发者们的热捧,成为了近年来最受欢迎的Java开发框架,当下的Coder如果要新创建项目,首选都是Spring Boot,而且与微服务有着完美的切入口。Spring Boot中内置的Tomcat插件,使得开发者不需要进行额外的Tomcat配置,就可一键启动项目。
Spring Boot可以打包成jar或者war的形式部署,现在生产很大一部分也是通过打包成war包的形式去进行部署,Spring Boot项目 也可以直接打包成可执行的jar或者war包,直接使用java -jar xx.jar/xx.war。
这种方式的话,Spring Boot项目的配置依赖之类的都在jar或war之内,如果需要更改配置,则需要从重新打包重启,不利于运维。
下面介绍如何将Spring Boot和配置分离打包成war,放入Tomcat中运行,引入外部配置。
前提条件:一个SpringBoot项目+Tomcat容器(我用的是8.5.53)
1.先去除spring-boot-starter-web依赖中内置的tomcat容器
org.springframework.boot
spring-boot-starter-web
${spring.boot.version}
org.springframework.boot
spring-boot-starter-tomcat
2.添加javax.servlet-api或者tomcat-servlet-api依赖
javax.servlet
javax.servlet-api
4.0.1
3.修改项目默认启动方式,启动类继承SpringBootServletInitializer类重写configure()方法,也可以新建类继承SpringBootServletInitializer类重写configure()方法,两种方式如下分别如下展示
启动类继承SpringBootServletInitializer类
packagecom.xiaochun;importorg.springframework.boot.SpringApplication;importorg.springframework.boot.autoconfigure.SpringBootApplication;importorg.springframework.boot.builder.Sprin