SpringBoot 高级 -- SpringBoot 项目部署

1. SpringBoot 项目部署

SpringBoot 项目开发完毕后,支持两种方式部署到服务器:

  • ① jar包(官方推荐)
  • ② war包

准备工作:

  1. 新建一个测试项目:
    SpringBoot 高级 -- SpringBoot 项目部署
  2. 新建一个controller
    SpringBoot 高级 -- SpringBoot 项目部署
package com.tian.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/user")
public class UserController {
    @RequestMapping("/findAll")
    public String findAll(){
        return "findAll success";
    }
}

1.1 jar包(官方推荐) :使用的是SprinBoot内置的Tomcat

打包:

SpringBoot 高级 -- SpringBoot 项目部署
SpringBoot 高级 -- SpringBoot 项目部署

测试:

SpringBoot 高级 -- SpringBoot 项目部署
SpringBoot 高级 -- SpringBoot 项目部署


1.2 war包:使用外部的服务器(例如外部的Tomcat)

修改打包方式为war:

SpringBoot 高级 -- SpringBoot 项目部署

我这里自定义一下打包的名称(可以不用定义):

SpringBoot 高级 -- SpringBoot 项目部署

要想被外界的Tomcat识别到,需要继承SpringBootServletInitializer和重写configure方法。

SpringBoot 高级 -- SpringBoot 项目部署

package com.tian;

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 SpringbootPackageApplication  extends SpringBootServletInitializer {

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


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

开始打包:

SpringBoot 高级 -- SpringBoot 项目部署
SpringBoot 高级 -- SpringBoot 项目部署

开始测试:

  1. 把刚刚打好的war包放在自己Tomcat服务器的webapps目录下面:
    SpringBoot 高级 -- SpringBoot 项目部署
  2. 启动tomcat服务器

SpringBoot 高级 -- SpringBoot 项目部署

测试访问:

SpringBoot 高级 -- SpringBoot 项目部署

说明:

在使用war的方式部署,代码里面配置的服务器信息都会失效(IP / 端口号),因为不是使用SpringBoot内置的Tomcat服务器。
SpringBoot 高级 -- SpringBoot 项目部署



上一篇:spring-boot项目布到tomcat容器下部署


下一篇:SpringBoot: war包打包