springboot如何动态切换不同的数据源

时间:2017-12-13 06:42:22

标签: java spring spring-mvc spring-boot datasource

我有要求在运行时切换datasource。不同的数据库配置数据(可能是mysql,oracle,mongodb ..)在DB中保留。因为我需要随时添加datasource,所以我这样做。现在,当我使用datasource时,我将在数据库中获取数据库配置数据并再次创建新的sqlSessionFactory

如何将它交给Spring IOC容器来处理?

1 个答案:

答案 0 :(得分:0)

看起来你需要Spring多租户支持。

您需要定义租户解析程序以确定您需要哪个租户(例如,通过拦截请求并从标头或令牌获取租户),租户上下文以保留租户(例如,为每个线程定义租户的ThreadLocal存储)和多租户连接提供程序(从本地线程读取租户并提供特定于租户的DataSource /连接)。

请参阅the examplethe example