java启动SpringBoot服务器,尽管数据库已关闭
我有一个连接到PostgreSQL数据库的SpringBoot应用程序。即使数据库关闭,我也希望启动服务器,但是continue-on-error=true
不起作用。当我模拟数据库关闭(错误的密码)时,我得到了Error creating bean with name 'countryRepository'
错误,即使存储库是延迟加载的
我认为这是因为默认@enableJPareposities。有人知道如何把它懒散地化吗强>
通过添加EntityManagerFactory、EntityManager、TransactionManager、TransactionTemplate的自定义延迟初始化实现来解决此问题
应用程序。性质
# Database Properties
spring.datasource.url=jdbc:postgresql://localhost:5432/world-db
spring.datasource.username=world
spring.datasource.password=world123F
spring.datasource.hikari.initializationFailTimeout=0
# Not working...
spring.datasource.continue-on-error=true
spring.datasource.initialization-mode=never
spring.jpa.database-platform=org.hibernate.dialect.PostgreSQL92Dialect
spring.datasource.driver-class-name=org.postgresql.Driver
spring.datasource.hikari.minimum-idle=0
spring.datasource.hikari.initialization-fail-timeout=-1
# Hibernate Properties
spring.jpa.open-in-view=false
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQL92Dialect
spring.jpa.hibernate.ddl-auto=validate
spring.h2.console.enabled=true
AppConfig。爪哇
@Lazy
@Configuration
@ComponentScan(basePackages = "com.flairstech.workshop")
public class AppConfig {
@Bean
public CountryLanguage getCountryLanguage(){
return new CountryLanguage();
}
@Bean
public Country getCountry(){
return new Country();
}
}
共 (0) 个答案