我正在尝试使用相同的存储库和模型来配置具有两个数据源的Spring Boot应用程序,但是当Spring Boot启动时说存储库已经定义并且无法在Bean容器上创建另一个存储库。是的,我的意思是..我接受错误..但我想知道是否有任何方法可以做到这一点。下面是我想做什么的想法
- 用于本地部署的Datasoruce(H2)----> com.myapp.repositories
- 用于远程部署的数据源(SQLServer)----> com.myapp.repositories
我的问题是,即使我正在本地计算机上进行部署,也需要我的远程数据源来执行某些操作。在其他情况下,本地部署期间本地和远程数据源连接都应处于连接状态。
我实际上找到了三种解决方案:
- 第一个是@ Profile,@ Configuration是“ prod”,一个是“ dev” ..但在我看来,这是行不通的。
- 第二个是为每种配置放置不同的存储库软件包。这项工作有效,但是我上线时需要移动所有存储库。
- 第三种解决方案是始终进行两次配置,而不在远程数据源上指定basePackages。这项工作有效,但是我上线时需要更改此参数。
还有其他解决方案吗?
谢谢您的帮助。