我正在编程服务,用于从数据库获取数据并通过REST服务提供它们。它使用spring mvc。我的数据库连接cofiguration位于属性文件中,Spring在上下文初始化期间将其作为数据源bean加载。
现在我的问题是 - 我想更改属性文件中的配置(例如更改数据库信息),但我无法重新启动应用程序服务器,因此无法加载新配置。
如何重新初始化spring上下文或某些特定的bean,以便使用新定义的属性?
答案 0 :(得分:1)
如果您想在Spring中使用多个数据源并且需要在运行时动态地确定适当的数据源,则可以使用spring提供的AbstractRoutingDataSource
来执行此操作。您必须实现查找键逻辑以确定方法determineCurrentLookupKey()
中的数据源。有了这个,您可以在运行时将不同的bean映射到不同的数据源。以下几个与此相关的问题。
How to programatically change databases in Spring with one DataSource?
另外