Java 防止数据库未连接时Spring启动应用程序启动失败

Java 防止数据库未连接时Spring启动应用程序启动失败,java,spring,postgresql,spring-boot,jpa,Java,Spring,Postgresql,Spring Boot,Jpa,我有一个连接到postgres实例的Spring启动应用程序。我的application.properties如下所示: spring.datasource.url=${POSTGRES_URL} spring.datasource.username=${POSTGRES_USERNAME} spring.datasource.password=${POSTGRES_PASSWORD} 我没有任何手动建立数据库连接的代码,Spring会自动完成这一切。我的问题是,当应用程序无法连接到数据库时,

我有一个连接到postgres实例的Spring启动应用程序。我的application.properties如下所示:

spring.datasource.url=${POSTGRES_URL}
spring.datasource.username=${POSTGRES_USERNAME}
spring.datasource.password=${POSTGRES_PASSWORD}
我没有任何手动建立数据库连接的代码,Spring会自动完成这一切。我的问题是,当应用程序无法连接到数据库时,应用程序根本无法启动。如何使数据库连接成功不是应用程序启动的条件?

您通常在启动脚本中的应用程序外部执行此操作。只在依赖项运行后启动它。我不知道你们是在集装箱运输还是什么,但我应该给你们一个主意

这就是说,在启动
应用程序上下文之前,您当然可以在
publicstaticvoidmain(String…args)
方法中实现这样的代码。G通过普通JDBC连接,检查PostGres是否已经启动。

您通常在启动脚本中的应用程序外部执行此操作。只在依赖项运行后启动它。我不知道你们是在集装箱运输还是什么,但我应该给你们一个主意


这就是说,在启动
应用程序上下文之前,您当然可以在
publicstaticvoidmain(String…args)
方法中实现这样的代码。G通过普通JDBC连接,检查PostGres是否已经启动。

您可以在props文件中进行设置
spring.datasource.continue on error=true

您可以在您的props文件中进行设置
spring.datasource.continue on error=true

这对我不起作用,仍然得到
[PersistenceUnit:default]无法构建Hibernate SessionFactory;嵌套异常为org.hibernate.exception.jdbconnectionexception:无法打开JDBC连接以执行DDL
您使用的是哪个版本的spring boot?2.2.7.RELEASE是我的版本。您可以在问题中添加属性文件吗?显然您的配置错误这对我来说不起作用,仍然得到
[PersistenceUnit:default]无法构建Hibernate SessionFactory;嵌套异常为org.hibernate.exception.jdbconnectionexception:无法打开JDBC连接以执行DDL
您使用的是哪个版本的spring boot?2.2.7.RELEASE是我的版本。您可以在问题中添加属性文件吗?你肯定有错误的配置