将SpringBoot项目配置到外部服务器上

事情起因:我用SpringBoot写了一个博客项目,想挂到某小霸王服务器上,但是怎么挂也挂不上去,最后导致了服务器到期了我还没挂上去,人间悲剧

于是向大佬请教了一下,得到了一份详细的教程

放到服务器上时要使用服务器上的tomcat,也就是外部服务器,但是SpringBoot是使用的内置服务器,这时候就需要配置了

  1. 首先我们需要在pom文件中添加依赖
<!--使用外部tomcat-->
<dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-tomcat</artifactId>
     <scope>provided</scope>
</dependency>
  1. 在SpringBoot自带的Application启动类所在目录下新建启动类
    在这里插入图片描述
// 新建的启动类的内容
// 让该类继承SpringBoot中的SpringBootServletInitializer 
@SpringBootApplication
public class Application extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
    	// 找到SpringBoot自带的启动类
        return application.sources(BaomingApplication.class);
    }
}

注:新建的启动类一定要和SpringBoot自带的启动类在一个目录下

  1. 在pom文件中的project中设置packing,将打包方式设置成war
<packaging>war</packaging>
  1. 在pom文件中的build中设置finalName
<build>
        <finalName>chengguo</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
</build>

注:finalName是项目打成war包放到服务器上运行,访问该项目的入口

全部配置完之后,通过maven将项目打成war包,放到服务器的tomcat文件夹下的webapps中,重启tomcat服务器,你会发现在webapps下会有一个和你war包同名的文件夹,正常情况下你的项目就可以在服务器上运行了
在这里插入图片描述

几个需要注意的点
  • 网址访问路径默认是服务器ip地址:端口号/项目名/映射路径
    以我的网页为例,129.204.18.121是服务器ip地址,8080是tomcat端口号,chengguo是项目名,baoming是映射路径

  • 数据库连接池的url也要改成服务器ip地址,而不是localhost

  • 数据库连接池中的username和password应和服务器上数据库保持一致,而不是和本地数据库保持一致

  • war包形式,在SpringBoot项目的配置文件配置的端口号只在本机有效,打包放到服务器上后没有效果,以tomcat的端口号为准

假如你和我一样没有服务器,但是想学SpringBoot配置外部tomcat服务器怎么办?

为什么不问问神奇的🐚呢
使用本地的tomcat服务器就好了

  1. 按照上方的步骤配置你的项目
    注:此时数据库是本地数据库,不需要额外修改

  2. 再通过idea配置外部tomcat服务器

List item在这里插入图片描述在这里插入图片描述

  1. 配置好tomcat之后,向tomcat中加入我们的项目
    在这里插入图片描述在这里插入图片描述
  2. 然后就可以在外部tomcat上愉快的运行我们的项目啦
    在这里插入图片描述
需要注意的问题

这个是tomcat服务器启动后默认打开的网页(可修改)在这里插入图片描述
这个是项目的默认访问路径(可修改)

在这里插入图片描述

修改后的结果
在这里插入图片描述在这里插入图片描述在这里插入图片描述

将 Spring Boot 项目部署服务器上通常可以有以下几种方法: 1. 打包成可执行的 JAR 文件 使用 Maven 或 Gradle 将 Spring Boot 项目打包成可执行的 JAR 文件,然后将该文件上传到服务器上,使用命令行运行该 JAR 文件即可启动 Spring Boot 应用。例如: ``` java -jar app.jar ``` 2. 打包成 WAR 文件 如果需要将 Spring Boot 应用部署到外部 Web 服务器中,可以将其打包成 WAR 文件。在 Maven 或 Gradle 中,只需要将 packaging 属性设置为 war 即可。然后将 WAR 文件部署到 Web 服务器中即可。 3. 使用 Docker 镜像 使用 Docker 将 Spring Boot 应用打包成镜像,然后在服务器上运行该镜像。这种方法可以快速部署应用程序,并且可以保证应用程序的可移植性和一致性。 4. 使用云服务部署 将 Spring Boot 应用部署到云服务器上,例如 AWS、Azure、Google Cloud 等云服务提供商。这种方法可以快速部署应用程序,并且可以根据需要进行自动扩展和负载均衡。 当部署 Spring Boot 应用程序到服务器上时,一些注意事项包括: 1. 确保服务器上已经安装了 Java 运行环境,可以使用命令 java -version 检查。 2. 配置应用程序的端口号,确保可以从外部访问应用程序。可以在 application.properties 或 application.yml 文件中配置端口号。 3. 配置数据库连接等外部资源的信息,确保应用程序可以正常访问这些资源。 4. 配置应用程序日志的路径和级别,以便进行调试和错误排查。 5. 确保应用程序的安全性,例如禁止使用默认的管理员账户和密码等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值