1
我正在使用spring启动,Angular,mysql和mongodb的web应用程序。当我连接到多个数据源时,我应该编写单独的代码来将这些数据保存在这些数据库中。我正在扩展JpaRepostiory并执行CRUD操作。与多个数据源连接到mysql和mongodb的春季启动
我想知道如果有,而我处理多个数据源,以避免冗余代码,以将数据保存
我正在使用spring启动,Angular,mysql和mongodb的web应用程序。当我连接到多个数据源时,我应该编写单独的代码来将这些数据保存在这些数据库中。我正在扩展JpaRepostiory并执行CRUD操作。与多个数据源连接到mysql和mongodb的春季启动
我想知道如果有,而我处理多个数据源,以避免冗余代码,以将数据保存
独立的仓库分成不同的包装,并添加到您的配置这一点,我应该遵循最佳做法:
@EnableJpaRepositories(basePackages = "com.acme.repositories.jpa")
@EnableMongoRepositories(basePackages = "com.acme.repositories.mongo")
interface Configuration { }
但我也会使用MongoRepository
,以便显然存储库正在与MongoDB对话。它延伸CrudRepository
就像JpaRepository
,所以你不应该改变你的代码。
感谢您的回复。我想了解分离背后的原因。 是否有任何价值添加或维护缓解?如果我必须分开存储库,那么我可能不得不重写几组构建必须被持久化的对象的代码,或者我应该将它们放在一个共同的地方并在其中使用。 界面内部配置配置{} – CrazyMac
在一个应用程序中使用两个数据库无论如何都是很大的设计气味。如果您需要这样做,明确基础技术至关重要。 – luboskrnac
好的。所以我认为你的建议是使用相关的存储库,即使它需要基于应用程序的冗余。你能解释一下这句话吗?'无论如何都有大的设计气味' – CrazyMac