Spring boot 如果spring boot无法使用JNDI查找创建数据源,如何创建回退

Spring boot 如果spring boot无法使用JNDI查找创建数据源,如何创建回退,spring-boot,datasource,jndi,Spring Boot,Datasource,Jndi,我有一个应用程序,我们使用设置为 spring.datasource.jndi-name=java:jboss/jdbc/mydb 在application.properties中 我们不想使用配置文件,因为客户不愿意使用 然而,在我的本地环境中,我们希望使用H2数据库而不是oracle,所以如果JNDI查找失败,是否可以创建回退bean 看看下面这样的事情是否可行 @ConditionalOnMissing @Bean MyBean mybean(){ //configure datasou

我有一个应用程序,我们使用设置为

spring.datasource.jndi-name=java:jboss/jdbc/mydb
在application.properties中

我们不想使用配置文件,因为客户不愿意使用

然而,在我的本地环境中,我们希望使用H2数据库而不是oracle,所以如果JNDI查找失败,是否可以创建回退bean

看看下面这样的事情是否可行

@ConditionalOnMissing
@Bean
MyBean mybean(){
//configure datasource using datasource builder
}

正如我已经在Gitter上回复您的,您应该将其移动到特定于概要文件的配置,因为它是特定于生产的。我猜您的客户不想在外部启用配置文件或其他什么。您可以使用SpringApplicationBuilder启用配置文件:这样,配置文件将由应用程序启用,并且不会出现在测试中