场景: 在线上部署时,若服务器因断电等原因意外重启,项目及其依赖的数据库服务通常需要配置为自动启动。此时,如果数据库服务启动较慢或失败,Spring Boot 项目会因无法建立数据库连接而启动失败。
需求: 为确保项目启动成功,需要让 Spring Boot 项目等待数据库服务完全就绪(即可接受连接)后再尝试启动。
解决方案: 以下将介绍如何配置 Spring Boot 项目,使其在数据库服务可用前进行连接重试,从而实现启动顺序的协调。
1 引入依赖
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
&