部署SpringBoot Project到外置Tomcat容器

一、SpringBoot Project两种打包方式

SpringBoot 项目约定优于配置,连Tomcat都自集成了,只用直接编写SpringBoot启动类,然后一键开启内置的Tomcat容器服务即可部署运行。但如果要部署到本地Tomcat或部署到某个服务器上,此时就需要剥离掉SpringBoot项目内置的Tomcat,进而将应用发布并部署到外置的Tomcat容器之中。
部署SpringBoot Project到外置Tomcat容器_第1张图片

二、修改Project打包方式

1. 修改

修改项目的pom.xml配置,将打包方式由jar修改为war:

<groupId>com.foxconn.idsbggroupId>
<artifactId>csapp_systemartifactId>
<version>0.0.1-SNAPSHOTversion>
<packaging>warpackaging>

2. 移除自带的嵌入式Tomcat

修改pom.xml,移除SpringBoot自带的的嵌入式tomcat插件:

<dependency>
	<groupId>org.springframework.bootgroupId>
	<artifactId>spring-boot-starter-webartifactId>
	
	<exclusions>
		<exclusion>
			<groupId>org.springframework.bootgroupId>
			<artifactId>spring-boot-starter-tomcatartifactId>
		exclusion>
	exclusions>
dependency>

3. 添加servlet-api依赖

pom.xml文件中添加servlet-api的依赖:

<dependency>
	<groupId>javax.servletgroupId>
	<artifactId>javax.servlet-apiartifactId>
	<version>3.1.0version>
	<scope>providedscope>
dependency>

4. 修改启动类,并重写初始化方法

在SpringBoot中平常用main方法启动的方式,都有一个SpringBootApplication的启动类,类似代码如下:

@SpringBootApplication
public class CsappSystemApplication {

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

现在需要类似于web.xml的配置方式来启动SpringBoot应用,为此需要修改 SpringBootApplication启动类,使其继承 SpringBootServletInitializer并重写 configure 方法:

// 修改启动类,继承 SpringBootServletInitializer 并重写 configure 方法
@SpringBootApplication
public class CsappSystemApplication extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder applicationBuilder) {
    	// 注意这里一定要指向原先用main方法执行的Application启动类
        return applicationBuilder.sources(CsappSystemApplication.class);
    }

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

三、部署到外部Tomcat容器

1. 部署到本地Tomcat

  • 配置Local Tomcat:
    部署SpringBoot Project到外置Tomcat容器_第2张图片

  • 部署war包到Tomcat,注意发布之前 maven clean:
    部署SpringBoot Project到外置Tomcat容器_第3张图片

2. 部署到服务器Tomcat

配置服务器Tomcat:

  • 官网下载Tomcat(.tar.gz)上传到Linux服务器并解压重命名;
  • 修改Tomcat端口号;
  • 启动Tomcat浏览器测试是否能成功访问。

部署到服务器(Tomcat)下:

  • mvn - clean - package
    部署SpringBoot Project到外置Tomcat容器_第4张图片

  • 打包成功后把target目录下生成的war包放到tomcat的webapps目录下,启动tomcat,即可自动解压部署;
    部署SpringBoot Project到外置Tomcat容器_第5张图片

  • 浏览器中输入http://YOUR_IP:[端口号]/[打包项目名]验证
    部署SpringBoot Project到外置Tomcat容器_第6张图片

你可能感兴趣的:(Spring,Spring,Boot)