当前有一个spring boot应用程序,它在application.properties中用作数据源
spring.datasource.url=jdbc:oracle:thin:@dev.example.org:1521:SID
可以使用不同的配置文件来构建应用程序,一个配置文件用于本地开发,另一个配置文件可以用于部署到应用程序服务器(weblogic)。在没有配置文件的pom.xml构建中,可以使用以下命令。我可以使用 dev.local 配置文件将其部署到应用服务器中,我可以直接启动它并在本地调试。
<profiles>
<profile>
<id>dev.local</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<version>${spring-boot-version}</version>
</dependency>
</dependencies>
</profile>
</profiles>
但是我的问题是,我希望在默认配置文件和开发配置文件中也使用不同的数据源。 在默认(生产)配置文件中,我想使用JNDI像这样:
spring.datasource.jndi-name=jdbc/datasourceName
我尝试通过覆盖application.properties进行尝试-但这似乎很繁琐且有问题,因为我必须将文件加倍并维护两次。
解决这个挑战的正确方法是什么?