如何使Spring Boot应用程序抵抗数据库连接错误?

问题描述:

我想让我的Spring Boot应用程序对数据库连接错误有效。如果应用程序在数据库可用之前启动,则应重试建立数据库连接。如果数据库连接在操作期间丢失(例如,数据库重新启动,网络错误...),则应该发生同样的情况。而且我正在使用Flyway迁移,所以Flyway不应该启动(并抛出异常),直到有数据库连接可用。如何使Spring Boot应用程序抵抗数据库连接错误?

我该如何用Spring Boot(1.5)来做到这一点?

有一个开放的票在弹簧引导跟踪这种行为/问题 https://github.com/spring-projects/spring-boot/issues/4779