linihan 2013-09-13 09:39 采纳率: 0%
浏览 1079

springMVC 动态修改SessionFactory

项目中以前使用的框架是springMVC + ldap,但是现在由于业务变更,需要ldap和db2根据不同的业务进行切换。DB2的持久层框架用mybatis我现在的的思路是利用spring配置多个SessionFactory,根据用户操作调用不同的SessionFactory。问题是:怎么样动态切换SessionFactory 。大神们,帮帮忙呀!急急急急……

  • 写回答

1条回答

  • ChatGPTᴼᴾᴱᴺᴬᴵ 2023-02-13 13:04
    关注

    该回答引用ChatGPT

    在 Spring 中,可以通过在不同的数据源中使用不同的 SqlSessionFactory 实现动态切换 SessionFactory。

    • 配置多个 SqlSessionFactory:在多个数据源配置中分别指定不同的 SqlSessionFactory,并使用不同的数据源 ID。
    • 为每个 SqlSessionFactory 创建一个事务管理器:使用 @Transactional 注解为每个 SqlSessionFactory 创建一个事务管理器。
    • 创建一个 DynamicDataSource 类:该类用于动态切换数据源,可以通过设置一个当前数据源 ID 来实现动态切换。
    • 配置 DynamicDataSource:在 Spring 配置文件中配置 DynamicDataSource,并将其作为数据源使用。
    • 在代码中设置当前数据源 ID:可以在代码中通过设置 DynamicDataSource 的当前数据源 ID 来实现动态切换。

    这样,在代码中通过设置当前数据源 ID,就可以动态切换 SqlSessionFactory,从而实现动态切换数据源。

    评论

报告相同问题?

悬赏问题

  • ¥15 孟德尔随机化结果不一致
  • ¥20 求用stm32f103c6t6在lcd1206上显示Door is open和password:
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
  • ¥15 关于#hadoop#的问题
  • ¥15 (标签-Python|关键词-socket)
  • ¥15 keil里为什么main.c定义的函数在it.c调用不了
  • ¥50 切换TabTip键盘的输入法