SpringBoot 高级 -- SpringBoot 项目部署(jar/war)
Posted CodeJiao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot 高级 -- SpringBoot 项目部署(jar/war)相关的知识,希望对你有一定的参考价值。
1. SpringBoot 项目部署
SpringBoot 项目开发完毕后,支持两种方式部署到服务器:
- ① jar包(官方推荐)
- ② war包
准备工作:
- 新建一个测试项目:
- 新建一个controller
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
打包:
测试:
1.2 war包:使用外部的服务器(例如外部的Tomcat)
修改打包方式为war:
我这里自定义一下打包的名称(可以不用定义):
要想被外界的Tomcat识别到,需要继承SpringBootServletInitializer和重写configure方法。
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);
开始打包:
开始测试:
- 把刚刚打好的war包放在自己Tomcat服务器的webapps目录下面:
- 启动tomcat服务器
测试访问:
说明:
在使用war的方式部署,代码里面配置的服务器信息都会失效(IP / 端口号),因为不是使用SpringBoot内置的Tomcat服务器。
以上是关于SpringBoot 高级 -- SpringBoot 项目部署(jar/war)的主要内容,如果未能解决你的问题,请参考以下文章